Saturday, September 29, 2012

Passive Income Tipping Point

I've been reading about Tipping Points in my Model Thinking course.  It occurred to me that a personal tipping point occurs at the point where your passive income equals your expenses.   x = ratio of passive income to expenses and y = quality of life (need a better term).  As x goes from 0 to 1, your quality of life would gradually increase because your overall income is increasing and letting you do more awesome stuff like go to the movies or buy a bigger house.  At the point when x = 1, a huge event occurs where you no longer need to work.  This dramatically changes your quality of life because you have all the time and no work stress, etc, etc.
This tipping point only occurs for passive income.  Although quality of life goes up while your earned income increases, passing over the point where passive income = expenses may be a steep slope but not a tipping point as defined in the course.

I can't think of anything deep, but it feels like something is there.

Friday, June 15, 2012

Upgrade Quartz 1.8.5 to Quartz 2.1.5 and Spring 3.0.3 to Spring 3.1.1

I had an existing app that used Quartz 1.8.5 and Spring 3.0.3's wrapper classes for configuration.  I needed to update Quartz to 2.x so that I could use multiple schedulers in a clustered environment via JDBCJobStore.  You can't just update Quartz, you also have to update Spring to 3.1.x.  I got hung up on this for a long time.  My application would just crash on startup with the existing configuration.  I finally determined that I was using the wrong wrapper classes.  I'll list the old classes I was using and the ones that I needed to swap out to make it work.

  • org.springframework.scheduling.quartz.SchedulerFactoryBean
    • No change needed
  • org.springframework.scheduling.quartz.CronTriggerBean
    • org.springframework.scheduling.quartz.CronTriggerFactoryBean
  • org.springframework.scheduling.quartz.JobDetailBean
    • org.springframework.scheduling.quartz.JobDetailFactoryBean
  • org.springframework.scheduling.quartz.QuartzJobBean
    • No change needed

So your steps are
  1. Replace with new quartz jar
  2. Replace with new spring jars
  3. Change
    1. CronTriggerBean to  CronTriggerFactoryBean
    2. JobDetailBean to  JobDetailFactoryBean