Tuesday, August 28, 2012

Portable Apps for Development

I am a fan of the portableapps system and have been for several years.  I have begun to mess around with web development, adobe air, and android development. I have several portable apps that I use for this.

1) Eclipse Portable - Java, Adobe Air, HTML IDE. Not the latest version but certainly adequate for some of the development I am doing.

2) Mozilla Firefox Portable - This is the browser that I use to preview HTML coding.

3) Inkscape Portable - Open source SVG graphics editor. Useful for logos.

4) IcoFX Portable - an icon creation/editing tool.

5) ColorPic - Get the color codes for any pixel on your screen.

6) FotoGrafix Portable - an image editor. Useful for combing images, resizing images, and touchups.

I find these apps quite helpful in my daily development work.

Dead Nexus 7 - No! Just Sleeping

I really love my new Nexus tablet. The speed and beauty is wonderful. You can imagine my dismay when I went to turn it on for the first time in the day and nothing happened. I worked the power button over and no response. I plugged in the charger. Nothing. I plugged it into a USB port, nothing. I was really beginning to panic. So i googled dead Nexus 7 and I was not the only one to have this experience. The solution was to hold the power button down for a long time. Anywhere from 15 to 40 secs. And to my delight, the tablet came back to life after about 20 secs. It hasn't happened again, and hopefully it won't. What a relief to get it going again and to avoid the hassle of a return.

Friday, August 24, 2012

Thoughts on the Google Nexus 7

I received my Nexus 7 a couple of days ago. My initial impressions are good. I am comparing this unit to my wife's Ipad2 and a cheap android (4.1) tablet I already had. First of all, I wished I had never purchased the cheap android tablet. For the most part it is very frustrating to use, due to the minimal processing power it has. That's the first thing I noticed about the Nexus & - it zings! Things happen the instant a button is touched. Apps load quickly. It's a beautiful thing. The next problem with the cheap tablet is the dismal battery life. I can only get 1-11/2 hrs out it. After an hour on the Nexus I still have 95% charge. Sweet. The cheap tablet did do some things well - like playing videos. But don't ask it to multitask - it fails miserably. The Nexus 7 screen looks great. It compares favoribly with the Ipad2 I think. The responsiveness is good.

On the down side, the Nexus, like the Ipad2, doesn't have an external memory card slot. Of course you can interact with the computer by usb cable and bluetooth, but why not add the card slot? Even the cheap tablet had a miniSD card slot.

I bought the 16g version of the Nexus 7, directly from Google. I received the unit in 3 days. It is package nicely, but it took me awhile to slip off the out covering of the box - it was on pretty tight.

For the money, I think the Google Nexus 7 is an excellent product for the price.

Also, the app I developed with Eclipse and Phonegap (Cordova) looks awesome on the Nexus 7.

Tuesday, August 21, 2012

Using PhoneGap (Cordova) in Eclipse

After I discovered that I could not deploy Adobe AIR to Android when using HTML/Java as source, I looked for another way. I found PhoneGap. Officially, PhoneGap is now Apache Cordova. It is a mobile development framework that allows using HTML and Javascript to create phone apps. I loaded PhoneGap and with Eclipse and I was able to use the HTML/Javascript files I had developed previously. I downloaded the app to my tablet and it worked. It was quite a tedious task to set up the project to work with phonegap. I knew I wasn't the first to notice this - so I searched for  phonegap plugin and found one that does all the setup for you here. Now I can easily create a phonegap project in Eclipse. I can write my code in HTML and Javascript. What a wonderful world.

Thursday, August 16, 2012

Building and deploying AIR apps in Eclipse using HTML and Javascript

Here is the setup I use for developing, building, and deploying Adobe air apps in Eclipse. I have the following installed on a USB drive:

1) Eclipse portable: Eclipse SDK Version: 3.7.2
2) Adobe AIR SDK

I create my project as a General project. Here is the structure I use:

ProjectName
    image File Folder
    cSS File Folder
    inc File Folder - javascripts
    ProjectName.html (pseudo Index.html)
    ProjectName-app.xml 
    page1.html
    page2.html

The must follow items are in red. The other items can really be named whatever you like. To use my external run configurations the project structure has to have the items in red above. The advantage to following this structure is I do not have to create a new external run config for each new project. Here's a "Hello World" project structure to illustrate the above.


 When I am ready to test the app in AIR I use the following external run configuration:

Before running this configuration, you must select the ProjectName-app.xml file.

When I want to generate a certificate I use the following run configuration:




The certificate file cert.p12 will be in the base workspace directory.

To build the project as an AIR app for windows, I use the following run configuration:



Once again, before running this configuration, you must select the ProjectName-app.xml file.

When using these external run configurations, the most frequent error is caused by not selecting the  ProjectName-app.xml file first.

Wednesday, August 15, 2012

Eclipse, Adobe AIR, and Android Trials and Tribulations

I have spent the last week or so playing around with Eclipse, Adobe AIR, jQuery, javascript, html and so on in hopes of building an android app using HTML and javascript in AIR. Today, I decided I would package my AIR app for Android. Today I found out you can not package a html based AIR project for Android. The app works fine for windows - but you can't package a html based AIR project for Android.

Well - this is a setback. I've been configuring my system, creating apps in html and javascript in hopes of porting to Android. OK. It ain't gonna happen.

So what's next? Phonegap. I'm looking into Phonegap. We'll see how that goes.

Wednesday, August 8, 2012

Encrypting Files for Google Drive

Google Drive (this link opens in a new window) is a wonderful tool. However, it lacks encrypting. So this limits its use somewhat. I use a file zipper to encrypt to add another layer of security for my personal data files that I store on GDrive. Here's the process I follow:

1) Use 7-zip (this link opens in a new window) to create a zip file of my file, files, folders, etc. I chose the AES-256 (this link opens in a new window) encryption and enter a password.

2) Next upload the file to your GDrive

3) Whenever I access the file from any computer I open with 7-Zip. It requests that a password be entered and then the file (or files) can be extracted. I almost always use the "Extract inside" selection. This way, when I modify the file and save it it will automatically be updated in the zip archive. That's a timesaver and a good reason to use 7-Zip.

I have 7-Zip installed on all of the computers that I might want to view the encrypted data.

You don't have to use 7-Zip, there are other zip routines which have encryption capabilities.

This system works well for me and protects my sensitive data.

Monday, August 6, 2012

How I sync KeePass database across pc's and android

If you are online, you can not escape passwords. I began using KeePass for password storage on my pc several years ago. Initially, I had the KeePass Portable on a USB drive. That way, I could plug the USB drive into whatever computer I happened to be on and have access to my passwords. When Dropbox became available, I decided to use it as storage for my password database. This requires loading KeePass on each computer I use or I can still use the USB version. This way, I do not have to have the USB drive to access my passwords. I simply point my local copy of KeePass to the proper Dropbox file. This keeps the database synced across all computers. Here are the steps required to accomplish this.

1) Load KeepPass on each computer you will be using (Home PC, Work PC, Laptop, etc.)

2) Using KeePass, create a DB and store in a Dropbox folder

3) Load Dropbox on each computer in step 1

4) Open Keepass on each computer and access the password db in Dropbox

Access on Android devices

When Android phones and tablets came out, I needed the same passwords on these devices. Fortunately, KeePass and Dropbox are available as Android apps. Follow theses steps to set up KeePass on Android devices.

1) Download and install the Android versions of KeePass and Dropbox.

2) When opening KeePass, point to the Dropbox password database which was created in step 2 above.

The KeePass db is encrypted and password protected so I don't worry that it is stored in the cloud. This approach has worked very well for me. You could also use Google Drive, SugarSync, or other online storage sites in the same way.

Thursday, August 2, 2012

Going Portable with Eclipse IDE

Recently, I had the urge to do some HTML coding for a new website. Having used Eclipse before as an HTML editor, I decided to go that route again. I installed Eclipse Indigo on my desktop and then installed the Aptana Studio 3 plugin. This is cool. Next, I realized I would like to have the HTML development in a portable app. I've been a fan of www.portableapps.com for some time. They didn't have one listed, but a google search gave this version of Eclipse portable. I loaded this on my USB drive with no pproblem. Next, I tried to add the Aptana Studio3 plugin. I tried the "update site" way first and I coould never get it to load completely. Next, I tried to load a downloaded version. This didn't work either. So I gave up on Aptana Studio 3 and looked for alternatives. What I found was the web page editor plugin. This provides a decent html editor and you can test the code in an external browser. Now I have a development system which totally resides on my USB drive allowing me to take it with me to work and play. The disadvantage of the web editor plugin over the Aptana plugin is that the web editor plugin doesn't support ftp. I haven't arrived at the point where I need this yet. I'll let you know the solution when I do.

Addendum 7 Sept 2012: One issue you might have using the external run configurations is that the usb drive with eclipse may have different drive letter for different computers. To solve this difference between my home and office computer I changed the drive letter of the usb drive to Q: for both computers. Then all my run configs reference Q: and they work on both computers.

Another Blog

As if I need more to do. But, when adding stuff to my photography blog I realize there is lots of stuff I would like to post that doesn't involve photography. So now I have a blog where I can post generally interesting stuff that I collect. Enjoy.