Education & Skills Development
Mobile/Handheld Resources:
Android Development
- Android.com ( forums )
- Android Developer Guide and Training
- Android Studio ( Wiki ) ( Tutorial ) - Consolidates functionality (that used to be in separate programs below)
- Android Developer Tools (ADT) Main Info
- Android SDK versions 2.2, 2.3.3, and 3.x, etc. ( download ) ( brief release notes )
- Android Developer Tools (ADT) ( Android Tools )
- Android Developer Tools (ADT) Plugin for Eclipse
- Installing the Android Developer Tools (ADT) Plugin for Eclipse ( download ADT-20.0.3.zip )
- Managing AVDs with AVD Manager
- Connecting to an Android Device When Developing On Windows -- USB driver needed
- Android Programming E-Book, by Nicolas Gramlich
- Open Source Apps for Android
- Article: Android vs. iPhone Development: A Comparison, by David Green (7/6/09)
- Article: Android Event Dispatch Thread or Main Thread -- Tutorial (10/12/10)
webOS / Palm OS Development
- WebOS
- Enyo Framework ( Wikipedia ) ( prior webOS framework was Mojo )
- Palm Open Source
- Palm OS Wikipedia
- "Pre to Postmortem: The Inside Story of the Death of Palm OS and webOS", Chris Ziegler (6/5/12)
- "LG Acquires webOS from HP to Use in Smart TVs", Salvador Rodriguez (2/5/13)
- "What LG's Acquisition of webOS Means for Its Open Source Projects", Florence Ion (2/26/13)
- Open Web OS Project (no longer exists)
- HP WebOS (no longer exists)
- WebOS Development (no longer exists)
- WebOS Internals Wiki (no longer exists)
What Happened to the Adobe Mobile Flash Player and ... ?
- Article: The Beginning of the End of Adobe Flash Player, by Jared Newman (11/9/11)
- Article: RIP Adobe Mobile Flash: Will Anyone Miss You?, by Daniel Ionescu (11/9/11)
- Article: Adobe Flex SDK Bombshell Stuns Developers, by Tim Anderson (11/15/11)
- Article: Adobe Drops Flex For Flash, Banks on HTML5, by Adrian Bridgwater (11/21/11)
- Article: Adobe Says No Flash Player for Android 4.1, Will Withdraw App, by Mikael Ricknas (6/29/12)
- Article: A History Lesson on the Rise and Fall of Adobe Flash, by Jake Rochelaeau (9/5/12)
- Article: Comparison of HTML5 and Flash, Wikipedia
- Article: New Release: Adobe Flash Player 11.5 and AIR 3.5 Now Available (11/6/12)
- Article: Detailed response from Adobe's Mike Chambers: Clarifications on Flash Player for Mobile Browsers,
the Flash Platform, and the Future of Flash, by Mike Chambers (11/11/11)
M Chambers says to see these JavaScript Canvas libraries: EaselJS, and Processing.JS, this beta website from Adobe for CSS3 transforms and animation: beta.theexpressiveweb.com, and for games on Flash Player 11: Starling Framework. Interesting, but JavaScript is not ActionScript. Will the AS 3 API functionality be supported by JavaScript? Where are the JavaScript development tools? Only time will tell how mobile shakes out. From Adobe, for now we have AIR for mobile (iOS and Android), and AIR and Flash Player for the desktop. - Article: Adobe's response: Your Questions About Flex, by Deepa Subramaniam (11/15/11)
What Steve Jobs, former CEO of Apple, said about the Adobe Flash Player
- Article: Thoughts on Flash, by Steve Jobs (April, 2010)
- Article: Why Apple Won’t Allow Adobe Flash on iPhone, by Brian X. Chen (11/17/08)
- Article: Steve Jobs slams Adobe Flash in open letter (updated), by Charles Arthur (4/29/10)
- Article: Steve Jobs Shares His Thoughts On Flash, by Ian Paul (4/29/10)
- Article: Comments from an embedded engineer: Response to Thoughts on Flash, Andy Gryc (5/13/10)
- Article: Steve Jobs Pens Public Thoughts On Flash, by Lex Friedman (4/29/10)
"... cross-platform development tools like Flash aren't focused on creating the best iPhone OS apps; they're instead focused on creating software that, written once, can run anywhere. Apple, Jobs says, wants developers creating apps that leverage every advantage the iPhone OS offers."
What is Pre-Multiplied Alpha in Adobe Flash Player?
- Article: The Dirty Secrets of Pre-Multiplied Alpha, by Quasimondo (4/5/08)
Flash Player uses pre-multiplied alpha to optimize for speed but at the cost of performing lossy image transformations affecting R,G,B channels as well when modifying the alpha channel (extremely lossy for small alpha values).
Web Development Resources:
CSS |
JavaScript / jQuery |
ActionScript 3.0, MXML, Flex 4, Flex 4.5, and Adobe AIR
- Flash Builder for PHP (Adobe Link) ( also here )
- Flash Builder for PHP (Zend Studio Link)
- Flex 3 APIs
- Using Flex Builder 3
- Flex Style Explorer v3.0 Beta
- Learn Flex 3 in a Week
- Learn Flex 4 in a Week
- Adobe Tour de Flex - Tour ( download )
- Article: Differences Between Flex 3 and Flex 4, by Joan Lafferty (10/4/09)
- ActionScript 3.0 Reference for the Adobe Flash Platform
- ActionScript 3.0 Language
- Apache Flex Incubator website
- Adobe AIR 3
- Adobe AIR 3 Help
- Adobe AIR Documentation
XAMPP / Xitami Web Servers
- ApacheFriends.org ( XAMPP for Windows )( all XAMPP versions for Windows )
( XAMPP Lite v1.7.3 -- download )
XAMPP Lite v1.7.3 has Apache v2.2.14 (IPV6 enabled), MySQL v5.1.41, PHP v5.3.1 (PEAR), phpMyAdmin v3.2.4, SQLite v2.8.17, v3.6.20, Webalizer v2.21-02, OpenSSL v0.9.81, msmtp v1.4.19 (a sendmail compatible SMTP client), Ming v0.4.3 for PHP, Miniperl v5.10.1, and PDF with pdflib lite v7.0.4p4 for PHP bundled together. - Xitami -- Legacy Xitami ( download )
- Web Caching Tutorial, by Mark Nottingham -- excellent tutorial
- REDbot - Checks HTTP resources, makes suggestions, and finds common protocol mistakes.
HTML and CSS Validation
- W3C Markup (HTML, XHTML, ...) Validation Service
- W3C CSS Validation Service
- W3Schools.com Web Page Validation
PHP
- PHP Language ( download ) ( manual )
- Pear -- PHP Extension and Application Repository
- PhpED -- PHP Editor by NuSphere
- Eclipse IDE for PHP
Eclipse 3.6.0 (Helios) IDE for PHP Developers ( download ) (see also PDT 3.1.1 Juno release )
Eclipse PDT 3.0.x All In Ones (for PHP dev) - Some Frameworks for PHP
Zend Framework ( download -- latest ) ( download archives ) ( APIs ) ( Prog Ref ) ( Tutorial )
--- ( ZF v2 FAQ ) ( ZF v1 FAQ )
CakePHP Framework ( download and archives ) ( APIs ) ( Tutorials ) ( The Bakery )
--- ( CakePHP Cookbook Release 2.x, 758 pgs )
CodeIgniter ( downloads )
MySQL
Java Development
- Java SE 6 Development Kit (JDK) ( download ) ( Java SE 6 API specification ) ( tutorials )
- Article: Multithreaded toolkits: A failed dream?, by Graham Hamilton (10/19/04)
- Article: Why Threads Are A Bad Idea (for most purposes), by John Ousterhout, Sun Labs (9/28/95)
- Article: Event-based Concurrency Control, by Tom Van Cutsem (10/25/09)
- Article: How do I know if I'm on the event dispatch thread? (10/23/11)
- Article: Event-Dispatch Thread Rules for Swing UIs, by Jeff Friesen (5/26/11)
- Article: What exactly is the "Event Dispatch" thread (aka "AWT" Thread)? (1/26/00)
- Bruce Eckel's Free Electronic Books (Java, etc)
- Java Netbeans ( features ) ( downloads )
- Eclipse -- Start here if new to Eclipse ( downloads ) ( installation ) ( forums )
Official Eclipse FAQ --- FAQ More Frequently Updated
How to Compare/Combine Packages
How to Update and Install Software for Eclipse
Eclipse 3.6.0 (Helios) IDE for Java Developers ( download )
Eclipse 3.6 (Helios) Documentation
Eclipse 3.7.0 (Indigo) IDE for Java Developers ( download )
Eclipse 3.7 (Indigo) Documentation
Eclipse 4.2.x (Juno) IDE for Java Developers ( download )
Eclipse 4.2 (Juno) Documentation
Joomla! and WordPress
- Joomla! ( download )
- Joomla! Extensions Directory
- Wordpress ( download ) ( documentation )
- Article: Giving Wordpress Its Own Directory
Down-Grading Software To A Previous Version
Browsers and Add-On Tools
- Firefox ( features ) ( older versions ) ( full list of downloads ) ( release notes ) ( by version ) ( shortcuts )
- Add-ons for Firefox
- Article: Firefox no longer works with earlier versions of Windows XP
- Firefox 3.6.28 and Firefox 12 are the latest version of Firefox that will work with Windows XP and XP SP1
- For Windows XP users, apply Service Pack 3 to XP for free, then the latest Firefox version can be used - Firefox Add-on: Firebug ( developer's website )
- Firefox Add-on: Web Developer ( ChrisPederick.com )
- Firefox Add-on: ColorZilla ( developer's website )
- Firefox Add-on: SQLite Manager Extension for Firefox ( info ) ( download ) ( FAQ )
- Chrome ( features ) ( FAQ ) ( download offline installer or click here or File Hippo )
- Safari ( features ) ( download Safari 5.1.7 for Windows, 5/9/12 -- SafariSetup.exe )
Article: Did Apple Just Kill Safari for Windows? (TomsHardware.com, 7/26/12)
Article: Apple Removes Mentions of Safari for Windows, But Version 5.1.7 Still Available (7/25/12) - Opera ( download )
- Some recommend using MozBackup to backup/restore Firefox / Thunderbird, etc profiles and data.
- Favicon Generators: Photoshop Plug-in ( Favicon Webtool #1 ) ( Favicon Webtool #2 )
Email Client: Thunderbird and Managing Email Folder Compaction
- Thunderbird ( features ) ( older releases ) ( full list of downloads )
( How to go back to earlier release ) ( importing and exporting your email )
Thunderbird (TB) email files will become HUGE over time (many gigabytes), even if you've been careful to delete all of your old emails regularly. This is because TB doesn't reclaim the space used by deleted emails by default. Reclaiming the space used by deleted emails is done by performing the "compact folders" TB command. You can fix this default TB configuration problem by either manually telling TB to reclaim the space every now and then, or you can configure TB to compact your email folders automatically based on a threshold value.
When a user deletes an email, Thunderbird (TB) only marks the email for deletion. Physical deletion only happens when TB compacts the folders. This is because all the emails for a folder are stored in one file and each email is stored as a variable length record. Consequently, the way that TB recovers the space in the file used by deleted emails is to rebuild the entire file, leaving out the deleted emails during the rebuild operation, reindexing the file during the rebuild. Users can reclaim deleted space manually by telling TB to perform the following command: File--> Compact Folders, but especially if you've never done this command before, BACKUP your TB profile before you compact folders for the first time. Also, be sure to take TB off-line before doing the compact folders operation manually. The steps to manually compact folders are as follows:
How to compact folders used by Thunderbird to save space
1- Take Thunderbird (TB) offline: File--> Offline--> Work Offline
2- Backup your Thunderbird profile in case you might be one of the rare few that ends up with corrupted files as a result of the compaction operation (read about complaints here, and the same author believes that even the most recent version of TB ver 16 may in rare cases be causing permanent data loss when compacting).
3- Manual: File--> Compact Folders The currently selected email address folder and sub-folders will be compacted, with progress shown in the status bar down below. This operation can take a while.
4- Upon completion of compaction of the email address you've chosen to compact, browse to see that your emails still look good and that the total email count (shown at bottom of window) is unchanged for the email address. Then do the same for any other email addresses that you have.
5- Put TB back online (opposite of step #1)
6- Note that TB can be configured to do this periodically automatically based on a threshold value.
Installing Multiple Versions of Firefox on Windows (for testing, etc.)
- Article: Install multiple versions of Firefox to test before upgrading to latest release, Ashraf (12/20/11)
- Article: Running multiple versions of Firefox in Windows, by Andy Culshaw (3/31/11)
- Article: How to Install & Run Multiple Firefox Versions in Windows, by Dennis Plucinik (2/4/11)
- Article: Install Firefox 3.5 side by side with Firefox 3.0 on Windows, Abel Braaksma (9/28/09)
- Article: Use the Profile Manager to create and remove Firefox profiles (Mozilla Support)
- Article: How to Deal With Problems When Installing Firefox Add-ons or Extensions (Mozilla Support)
- Article: How to Install Firefox as a Portable App ( more here ) ( PortableApps.com )
Regular Expressions
- PHP Regular Expressions Examples
- Using Regular Expressions with PHP
- Article: Using Regular Expressions - Part 1: Understanding the Basic Building Blocks, by David Powers
- Article: Using Regular Expressions - Part 2: Finding and Replacing Text, by David Powers
- Regular Expression Library
- Regular Expressions Website
Training: (online video and books)
- StackOverflow.com -- Incredible resource for finding great answers to even obscure and difficult questions
- edX Courses - Free On-Line Courses from Universities All Over the US
- PacktPub Books & Videos Training
- Coursera - Take the World's Best Courses, Online, For Free
62+ Universities (as of Feb, 2013) from around the world have partnered with Coursera - Udemy
- Inform IT
- Safari Books Online
- Lynda (Lynda has purchased the English-language training material from video2brain)
- Total Training ( emphasis on graphic design )
- YouTube
Security:
- Bruce Schneier's Security Blog
- Article: (Classic) Reflections On Trusting Trust, by Ken Thompson (Aug, 1984) ( PDF File ) ( wikipedia )
- Article: Reflections On Trusting Trust, Revisited, by Diomidis Spinellis (June, 2003)
- Ted Talk on YouTube: All Your Devices Can Be Hacked, by Avi Rubin (16:51) (12/1/11)
- Voting Security:
The Case for Open Voting: Democracy Demands Transparency, Not Trust, by Lynn Landes