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.
Sunday, September 11, 2011
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.
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.
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.
10 useful solutions for Android developers courtesy of Shaman.sir
Here's a very useful article for Android developers courtesy of Shaman.sir
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.
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.
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.
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.
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:
Next post should start with creating the basic app and getting the data structure working.
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.
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.
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.