Sunday, September 11, 2011

Released Version 1.2 of Expenses Simply

My Expenses Simply App has been updated to version 1.2.  I've added a feature to email your entries in a comma separated form (easy to import into desktop apps).

Here is the original post announcing the applications.

Tuesday, August 2, 2011

Apps to setup an SSH socks proxy on android

So I had a need to access a website that is on a private home network which resides behind a Linux server. The only way into this box is through an SSH connection that only takes rsa keys.

The two apps I used are sshtunnel and proxydroid. Both of these are available in the market.

My sshtunnel settings



My proxydroid settings




After that just fire up the browser and browse to the site. For quicker access I put the widgets for each application on my desktop so that I can launch them quickly.

Monday, July 25, 2011

Life tracking/hacking

Thought I'd get into a bit of life tracking / hacking and figure out what kind of patterns my body gets into and how they interelate.

First up is to track my sleeping patterns.  I'm going to try to track when I fall asleep initially and when I wake up.  I may follow this up with when I actually get into bed and when I crawl out of bed/hit the sleep alarm.  who knows this might turn into something neat.

I think I might post weekly stats on this blog as I go... who knows.

Wednesday, June 8, 2011

Released Version 1.1 of Expenses Simply

So this is just a minor bug fix.  I've released version 1.1 of my Android App Expenses Simply.  Please give it a whirl and let me know if you are having any issues with it.

Tuesday, May 3, 2011

Replaced the screen on my Dell Streak

So I cracked the screen on my Dell Streak a couples of months back.  It was still functional but the hair line cracks all over it were starting to get really annoying.  I contacted Dell to ask what I would have to do to get them to replace it.  They said I'd need to buy a whole new phone for about $250  ergg.  I searched the web for directions on how to do this myself and came across this excellent article on XDA to replace it.  I order a screen from GadgetFix on ebay and worked my way through the guide.  All done, works perfectly took about 30 minutes to do it.  I have a big thank you to all those on the internet that made it possible for me to do this on $75.

Wednesday, April 20, 2011

Enabling Foreign Keys in sqlite

Once again I must learn to read documentation carefully.

I was perusing the sqlite documentation on implementing foreign keys and created my tables in the way they said to and it wasn't working when I tried to create a row that violated my key constraint.  After a lot of teeth gnashing I finally found a small paragraph in the documentation.  

QUOTED:

Enabling Foreign Key Support

In order to use foreign key constraints in SQLite, the library must be compiled with neither SQLITE_OMIT_FOREIGN_KEY or SQLITE_OMIT_TRIGGER defined. If SQLITE_OMIT_TRIGGER is defined but SQLITE_OMIT_FOREIGN_KEY is not, then SQLite behaves as it did prior to version 3.6.19 - foreign key definitions are parsed and may be queried using PRAGMA foreign_key_list, but foreign key constraints are not enforced. The PRAGMA foreign_keys command is a no-op in this configuration. If OMIT_FOREIGN_KEY is defined, then foreign key definitions cannot even be parsed (attempting to specify a foreign key definition is a syntax error).
Assuming the library is compiled with foreign key constraints enabled, it must still be enabled by the application at runtime, using the PRAGMA foreign_keys command. For example:
sqlite> PRAGMA foreign_keys = ON;
Foreign key constraints are disabled by default (for backwards compatibility), so must be enabled separately for each database connection separately. (Note, however, that future releases of SQLite might change so that foreign key constraints enabled by default. Careful developers will not make any assumptions about whether or not foreign keys are enabled by default but will instead enable or disable them as necessary.) The application can can also use a PRAGMA foreign_keys statement to determine if foreign keys are currently enabled. The following command-line session demonstrates this:
sqlite> PRAGMA foreign_keys;
0
sqlite> PRAGMA foreign_keys = ON;
sqlite> PRAGMA foreign_keys;
1
sqlite> PRAGMA foreign_keys = OFF;
sqlite> PRAGMA foreign_keys;
0
Tip: If the command "PRAGMA foreign_keys" returns no data instead of a single row containing "0" or "1", then the version of SQLite you are using does not support foreign keys (either because it is older than 3.6.19 or because it was compiled with SQLITE_OMIT_FOREIGN_KEY or SQLITE_OMIT_TRIGGER defined).
It is not possible to enable or disable foreign key constraints in the middle of a multi-statement transaction (when SQLite is not in autocommit mode). Attempting to do so does not return an error; it simply has no effect.
It seems I have to turn it on or off..

DOH..  Hopefully this blog entry will help someone.

Monday, April 18, 2011

Android Database Tutorial I found on the net

This is an extremely useful Android database tutorial I found on the net at Another Android Blog.  I had been trying to wrap my head around an easy way to use sqlite in Android and this really put me over the top.  Show the guy some love and send him a donation if it helps you.

Tuesday, April 12, 2011

Android in action, second edition

So I have this Safari Online account through work.  As I get more and more into my Android development hobby I find my self referring to this book "Android in Action" a lot.  I just thought I'd share it with the rest of whoever reads this blog.

Monday, April 4, 2011

Video on Android UI patterns

Here's a video I stumbled soon on ui patterns from Google I/O. Its caused me to rethink a lot of my impressions.

Sunday, April 3, 2011

Android project #2: My Savings

I think I've come up with my next project. My wife is a big time coupon clipper so to help her I'm planning to develop some sort of tracker for couponing. I think initially I'm going to start with calculating savings and then moving on from there. I might even add a bar code reader into it.

Wednesday, March 30, 2011

Kenny Singing in preschool

Thought I'd post this.  Its not really tech related, just a video of my son singing in preschool.

Expenses Simply 1.0

It's here, I've settled on an application name "Expenses Simply".  I did a bunch of Google searching and didn't see any hits on it.  It's a pretty straight forward application.


  • Add expenses using the top bar.
  • Delete a single item by accessing the context menu with a long press.
  • Delete all items through the menu button.
  • Undelete through the menu button.
  • Items are sorted by date.
Please let me know if you have any issues with the application by leaving me a comment on this post.  

It should be on the android market soon. Link to application in the market.
QR code for those that know how to use them.


UPDATE:
Release 1.2 is here see post for details

Friday, March 11, 2011

Easy way to backup over ssh

Here's a really nice easy way to backup a folder over ssh.

tar zcvf - /localfolder | ssh user@remotehost "cat > /storage/location/filename.tar.gz"

Thursday, March 10, 2011

Arduino 3x3x3 LED cube

I got bored the other night and took a first run at an LED 3x3x3 Cube.  Here it is.
The software side is still rather rough so I'm not going to post it yet.

As for how it's put together,  the cathodes (Negatives) on each level are soldered together, the anodes (Positive) are soldered together vertically.  Each column and each level is on a separate digital pin on my Arduino Uno.  The way to turn a LED on or off is by setting the level low and the column high.  To turn more than one off I just turn them on and off really fast.  The eye can't see that it's only one LED at a time.  I think I may switch to using a transistor switch to turn the various columns and levels on or off as that way I can better regulate the amount of power going out to the cube.  Look for updates in the future along with code snippets.

Wednesday, March 9, 2011

Removing "at" jobs in bash.

Here's a basic bash command to remove a job named 'poweroff''  this can remove other at jobs just by changing what you are greping for.  This is handy as I can use this in a script or send it out remotely to multiple systems and it doesn't require any interaction.

for job in `at -l | cut -f 1`; do at -c $job | grep -e 'poweroff' >/dev/null && atrm $job; done



Have fun with it.

How to use Syntax Highligher 3 on Blogger

So I tend to like to post a lot of code. In the past I used Syntax Highlighter on my own blog server. In this economy I've downsized to using the free blogger system. I did some Googling and came accross this post over at the Common IT mans blog. Nice and easy to follow to get Syntax Highlighter 3 going.

 Thanks.

Expense tracker part 2. Beginning with the interface.

So, I followed the directions to create a basic app at the android developers site. I wont more you with the details as the directions are pretty simple. To keep it simple I picked all the defaults and picked android 2.2 as my target.  I will probably be able to roll this back a bit based on the features I plan to use.

So I've decided to start with the interface and work back from there.  I've worked up this /res/layouts/main.xml based on the image from this post.

 
  
  
  
  
 
 
 


Syntax Highlighter seems to like have full close tags in it. go figure.

It ends up looking like this in the gui tool.
It doesn't look like much but the fields are all in the right location.  The alternating color listview is going to be handled programatically with a custom listview.  I can't see any other way of handling that.

I guess that's about it for this chapter.  Next I'll start on the application internals.

Tuesday, March 8, 2011

Expense Tracker basic design.

After getting my development environment setup using instructions from the android developers site, I have set about designing my first android app.

The main use case I have for this app is to keep track of the things I spend during the day so that they can be brought back to  my home computer and added to Quicken.

The features that I want are:

  • Track date, note and amount for each purchase.
  • Looks good in both layout and portrait
  • preserves data across sessions of using it.
  • delete single items or all items from a context menu.
  • total values at bottom.
Here is a quick hack of a drawing of what I want the basic interface to look like.

Next post should start with creating the basic app and getting the data structure working.

Monday, March 7, 2011

Adventuring into Android development

So I got a Dell Streak in October.  It's an awesome device that I never seem to put down or quit tinkering on.  I'm running a custom ROM called Streakdroid. I've been itching to get into Android development for fun and profit since I got this thing. I've done a lot of Java programming in the past so this shouldn't be too difficult.  I'm going to chronicle my journey on this blog in hopes that it might help someone out there figure out what they need to do.  I am hopeful that other developers will see what I've done and give me better ways to do things as I am only a beginner at this.

For my first project I am going to do an expense tracker.  Why an expense tracker?  I currently use Quicken to keep track of my personal finances and would like a way to track what I buy during the day so that I can bring it back to the computer to enter into quicken.  If I don't do it this way I generally forget what I've bought and then have to go look in my online banking system and put it back into Quicken that way.

Again if anyone has a comment about the way I've done something please feel free to point it out to me.

a start of a new blog.

Its a beginning, I'm going to be posting random tech thoughts and tutorials here. I currently feel my writing style is pretty bad so this will be an evolution as well.  Please feel free to comment.  I'd actually appreciate if people would comment just so I know I'm not pissing into the wind.