Wednesday, December 4, 2013

Must have iPhone Apps

I have hundreds of 3rd party apps on my phone. I use a few of them all the time.

Drafts

The Drafts app gives you one place to quickly type or paste text, and then do something with it.  You can create custom actions to send that text to almost any service like Twitter or Facebook, or you can do something more complex like append the text with a time and a date to a specific file in your dropbox account.


Twitter


Many people like to use alternative Twitter clients, but I find the main Twitter app to be more than sufficient for most of my twitter usage.


Vine 


I don't create many Vine's myself, but I can waste a great deal of time watching other people get really creative with 6 seconds of video.


Riposte


The Riposte app is a great App.Net client, a twitter like service.


Google+


I use the Google+ app to read posts on Google+.  Not much else to say here.


Facebook


Love it or hate it, Facebook is the only way I communicate with some of my friends.  The Facebook app gets the job done.


Yelp


Restaurant reviews and information.  The Yelp app gets better with every update. Why don't more people use it?


YouTube


I watch an amazing amount of content on YouTube.  I often use the YouTube app to stream videos to my Apple TV.


1Password


Store your passwords securely. Generate new passwords. Keep the data sync'd across your devices and computers.


Argus and Nike+ Move


The M7 chip in the iPhone 5s made has replaced the Fitbit.  Argus and the Nike+ Move app can read the data stored in the M7 and show me that I should be exercising way more than I am.




Friday, May 17, 2013

Java

import javax.crypto.Cipher;
import javax.crypto.SecretKey;
import javax.crypto.spec.SecretKeySpec;

import org.apache.commons.codec.binary.Base64;

public class WordsToLiveBy {

 public static void main(String[] args) {
  
  String value = "2UEnLAFR7aICwCQ8q6LfE2b7EGNZLExRtOb7FbI6R-0let8dqHnTB-R" + 
      "dIwM82gKaEwBzOhvyI2e7oqGWTTwbx2Krb54txM6juMH5FNpwNxbKCM" +
      "scaqf3N2G5kglXPMhzONnaWfp0Wxf5Kk7NZF0yAcLiPPkK3CTSbUDAk" + 
      "PLVa7kbZGjbTG1cjM0-1rvEB8mvwbPEH-GDcLg8uU7v-EzBAblRMovk" + 
      "_olXAklRo4AKNuikee7MPldNQf3zmWL2WsIyDOmgMc9LWKR1cq9rAyB" + 
      "744xfsxFLB1FYueyhTBKeezynxuLuYd5UUovXSUEbk8DL";
  
  try {
   
   SecretKey key = new SecretKeySpec("Rush2112FreeWill".getBytes(), "AES");
   Cipher cipher = Cipher.getInstance("AES/ECB/PKCS5Padding", "SunJCE");
   Base64 coder = new Base64(32, new byte[] {}, true);
   cipher.init(Cipher.DECRYPT_MODE, key);
   byte[] decrypted = cipher.doFinal(coder.decode(value.getBytes()));
   System.out.println(new String(decrypted));
   
  } catch (Throwable t) {
   
   t.printStackTrace();
  }
 }
}