Thursday, September 12, 2013

The Rent is Too Damn Fair

Game theory has always been a topic that has intrigued me. In college I took a couple classes on the subject.  So when I recalled a Dinosaur Comics strip about the "cake cutting" problem it had me looking into it on Wikipedia. It is actually a very fascinating topic. Most people know that if you have two people to divide a cake, one person should cut and the other one gets to choose first. But what if you have more people? Also, equal portions might not be the only way to divide fairly; for example, one person might like different toppings.

Determining how to divide up rent is a particularly fascinating problem because the actors in the situation want to maximize their utility of the space they are getting (i.e. nicer bedroom) and minimize the amount of rent to pay at the same time.  The calculator at Splitwise is very good at determining a rent split based on room size, unique features, etc, and is based on results from surveys of what people think is fair. When researching the room assignment-rent division problem, as its called, there is a very interesting paper on how an auction format could maximize fairness. In fact, if the actors knew what the max for each room they would be willing to spend would be, a computer could determine the best price for everyone and room assignments without actually holding an auction.

At OneWeekOneWebsite one of the weekly projects I was hoping on doing was going to be making a site to determine such assignments.  However, someone has already done a fantastic job at this. The Rent Is Too Damn Fair looks like an awesome site so I figured there was no reason for me to repeat someone else's work. I'll have to find something else to do this week.

Wednesday, January 9, 2013

Nexus 7 Review

My wife and I got a Google Nexus 7 last week. We thought it would be a good device for our children to play with or watch videos on, especially on long trips. It might also make a good browser or reading device.  I've had a good chance to play with it enough to give it a review.


We ended up purchasing the 32GB model, not because that was our first choice but because it was a journey getting it. We originally wanted the 16GB model but it seemed nowhere had it. After calling the Staples in Colonie they confirmed they had one in stock but when we went there it was a return that they can't sell. So the worker told us the North Greenbush store had one instock. After travelling there, they said they did't have one either but offered to give us the 32GB at a discount (though we had to pay for it there and go back to Colonie to pick it up since they didn't have any of those in stock either). Going back to Colonie they worker said the other store lied to them (which is why I imagine they offered to give us the discount). I can't see any way that we would fill up the 32GB but I would have liked to have an SD card slot.

Anyway, the model we have does not have moble data. I can't imagine needing it already having the Android phones and at worst I might need to tether. The wifi is good enough since we'll be using it at home mostly anyway. It seems to pick up other wifi interference more than our other devices and I wish it had 5Ghz wifi so I can find a more free channel.
The speed is excellent. There isn't any waiting for the tablet to perform. I'm not certain about the charge, it doesn't seem to last the claimed 8 hours but I also don't know if its been fully charged. The size is great, not too big that you need two hands all the time but not too small to see. We can use it with one hand while holding a kid with the other. We did get some Velcro finger grips to help hold it.

Software - Jelly Bean

One of my favorite features compared to my phone is the updated operating system.  It is quite very slick and doesn't seem as cumbersome as the Gingerbread running on my phone. I like the new notifications tray and system settings drop down. I thought I wouldn't like the software buttons instead of physical buttons but they work equally as well.  Some have mentioned missing the settings button but it has always been there (or elsewhere on the screen) when I needed it. The loss of the search button is no big deal, I rarely used it anyway.  I also didn't think the recent apps button would be nearly as useful as it actually is: perfect for multitasking. With the new OS also comes the ability to have some updated apps.


After looking through the apps on my phone I was trying to find ones that would work well on the tablet. Since my phone has the advantage of making calls most of the apps on the phone aren't helpful on the tablet. But there is a slew of new apps which are great on the Nexus 7.

Chrome - The best app for the Nexus 7 is by far Google Chrome. I'm a huge Chrome fan and it is light-years ahead of the default browser on Gingerbread. We used to have a GTablet by Viewsonic but sold it because browsing was horrible and that was it's main purpose. We didn't get the Nexus 7 strictly for browsing but it definitely excels. My only wish was that Chrome apps and extensions were included but these features can be added with additional apps:

LastPass - With more browsing being done on the tablet its time to finally get LastPass Premium ($1/month). If you aren't using LastPass, do it, check it out! You can automatically fill your credentials in with the "Share" menu in Chrome.

2SendTab - We have 4 computers in our house and the tablet. If I see something awesome on the Internet and want to share, the easiest way is the Chrome extension SendTab ( This app lets me share a webpage between the tablet and any computer both ways.

Calendar - Again, way better than previous versions, the Google Calendar app is actually usable and useful. It might be the larger size of the table but since I use GCal often it is more familiar than the old calendar app.

ADW Launcher - This app I use on my phone mainly for the ability to organize the app drawer and the dockbar. Highly recommended, no more searching through your drawer for that app you need!

TWC TV - Time Warner Cable will let you watch live tv on your computer or Android device, change channels and program your DVR. Unfortunately you need aleast Android 4.0 for live TV so I didn't get to try this until getting the Nexus. It works as advertised and we are no longer stuck watching Nick Jr on the TV when our daughter wants to watch a show before bed.

Stick It - Lets you open a video or YouTube videos in the background so you can listen in while multi-tasking. You can also pin the video over what you are doing.

VPlayer - Great video player, has many codecs so you don't have to convert your video files, saving time.


Overall, the Nexus 7 is a great device. It clearly fills the niche of video watching that it was purchased for. It also makes a great browser which is primarily what my wife uses (used) her laptop for. I haven't seen her use the laptop since we got the tablet. (That might also be because I may have broken her speakers when I last fixed her laptop). She also says that reading on the Nexus 7 doesn't hurt her eyes like a computer screen would and will probably use it more than her Kindle Touch since it has a backlight. Great for getting our recipes from Google Drive into the kitchen. We could have also purchased a Kindle Fire HD but I'm glad we don't have to both with being restricted to Amazon or trying to root the device. I am very satisfied with this tablet.

Friday, February 17, 2012

OfficeMax Ink Refills are a Scam

My ink ran out. It does that frequently. Web pages get printed for offline reading.

When I was younger I remember my father trying to refill his own ink and he was mostly successful. I remember a few times when ink went everywhere but that seemed more like the cartridge's fault. I've refilled a couple of Lexmark ink cartridges only to find out that the chip prevents the printer from printing after being refilled. Technically, it guesses how much ink is left and when it says you're done, you're done. I've also refilled a couple of HP ink cartridges with success. You can go online and find kits and save significantly if you print often.

Right now I have and highly recommend the HP Officejet 6500 Wireless All-in-One Inkjet Printer. It has decent ink life and is pretty quick. What really sets it over the top is the wireless part. Ironically, this wireless printer is the first printer I've ever seen that comes with the A-B USB cable. The other features that I can't live without are the automatic double-sided (duplex) printing and the automatic document feed for the scanner. I'm trying to go paperless so setting a stack of papers on the feeder, walking away, and having it scan, OCR and send the document to any computer in the house has really made going paperless easier.

Back to my ink, I have a bad feeling about refilling my ink myself, especially because I don't want to ruin my printer. Normally I would order ink online. A full set of the XL cartridges is only $20 with shipping. These are remanufactured so the printer doesn't recognize the ink level, but that's not a deal-breaker for me. If you are concerned about running out of ink you can always buy a second set to have on hand. The price for the regular size HP brand color set is $26 + $8 for black. You can almost buy two sets for that price and the XL has 2.5 times more ink. A set of the HP brand XL tanks will run you around $75. That's almost the price of 4 remanufactured sets!

However, the other day I needed to print pretty quickly so I decided to try getting the ink refilled at Office Max. I had to go there anyway to buy a chair with MaxPerks rewards. Locally at our grocery stores we have a service where you can drop off your cartridges and they will refill them overnight. [I Fill InkJets] I only needed the black filled and that service would cost $9 ($28 for the set, not as cheap as buying online). At Office Max the lady took my cartridge, said they could refill it and that it would be $10. I thought it would be filled as I waited but it was pretty late anyway so its understandable that I'd have to come back. I come back the next day to try to retrieve my cartridge; they can't find it. The slip with my name on it is there but no cartridge. They tell me that I should go to the ink section and someone will help me and give me a discount. Now at this point I wasn't expecting to pay more than $10 since that is how much I would have paid if they didn't loose my cartridge. I pick out the right ink, no one comes to help. I go wait by the counter, no one helps. I keep pointing out that I'm still waiting to get my ink situation resolved and no one helps. Finally they check if anyone knows anything about my cartridge and they don't. They figured it must have been recycled because they couldn't refill it. That's funny, these remanufactured cartridges are refilled and this other company can refill them. Oh, and why didn't anyone call me (my number was on the slip) or ask me if I wanted to take my refill business elsewhere. After an hour, they give me a discount on an Office Max branded remanufactured cartridge. The total for one 920XL black comes to $27 (after their generous 10% discount for making me wait). I could have almost gotten it refilled elsewhere and bought a full set online for that price. That's $17 more than I was looking to spend!

All-in-all that does seem like a great business model, Office Max. Lure people in with the promise of cheap ink refills, recycle their cartridges (i.e. remanufacture them for your own ink brand), make them wait with the promise of a discount so they feel obligated to buy the overpriced ink at your store. I'm not the only person who has had issues. When I've been in the store before I remember at least two other people having problems with refills.

Thursday, February 16, 2012

OfficeMax MaxPerks Rewards are a Scam

Free Batteries!
That was pretty much the ploy grabbing our attention and getting us to sign up for the OfficeMax rewards system. The deal was buy Duracell batteries, get the same amount back on your MaxPerks account. (Limit 2, you won't get the rewards until the end of the next month. You must signup for the account online. The store can't check your balance or use it, you have to print out a certificate and bring it in.)

Did you catch that? (Limit 2, you won't get the rewards until the end of the next month. You must signup for the account online. The store can't check your balance or use it, you have to print out a certificate and bring it in.)
I didn't and I don't think it was even attempted to be communicated in the store. So after spending $60 on batteries I tried to check the balance in the store, no luck. I checked the account online, no information about our balance. So I called and that's how I found out it couldn't be used until the end of the next month. So, the next month we go and spend time looking at computer chairs and finally pick one. Call to check why the balance was lower and then found out it was limit 2. Ok, fine. We go to checkout and lo and behold we had to print out the balance. So, we went to Walmart and got a chair that was better for less than we would have spend out of pocket with the certificate.

I'm still waiting to use our certificate then I can't imagine anything I'd need at OfficeMax that I couldn't find cheaper at Walmart or online. Oh, and don't refill your ink at Office Max.

Tuesday, September 28, 2010

Save for your Winter Heating Costs all Year Long without Temptation

When the winter comes along, homeowners in most parts of the country feel their wallets get lighter. For example, I predict that I will use about 500 gallons of kerosene to heat my house this winter. At $2.80, that's $1400! Unlike working with a utility company to get a budget plan where they estimate your average monthly utility expenses and charge you that, I have to save up before hand in order to pay the delivery man when he comes to fill up my tank. And with a 100 gallon minimum, the smallest charge I'll have is around $300. Yikes.

The other issue most people have is the temptation of spending that $1k they have had sitting in their bank account all year.  As the balance grows, so does the desire. The same problem happens when a homeowner doesn't have a tax escrow for property taxes, they must be disciplined enough to save for property taxes. One product banks offer is a tax savings account to save all year and only withdraw when presented with a tax bill. We'll use the same principle with saving for heating costs: a "holiday savings club" account.

Obviously a holiday club or holiday savings account is normally used to save all year long for your year end consumerism. Most credit unions offer them and a few banks do as well. What happens is you make deposits year round and then in October or November, the bank will transfer the entire balance to your regular savings or checking account, earning you a little interest in the process. Most holiday savings accounts have restrictions on how many withdrawals can be made during the year and some will even close your account it you make more than one early withdrawal. While its possible to blow your heat savings on a new car, by making it more difficult to access the funds (some require you visit the branch for an early withdrawal) you reduce your temptation. And if a major emergency does occur, the funds will be available. Setup direct deposit or an automatic transfer and you should be all set for Jack Frost nipping at your nose. Use a summer savings account or a vacation club savings account if you live in a warmer climate and need to cool down in the summer.

Another alternative would be to open an online high-yield savings account and setup direct deposit or automatic transfer. Being separate from your regular bank should keep your eyes off the money while earning 1%. ING Direct and HSBC Advance are the largest. I have HSBC and I am unsatisfied with their customer service but like the fact that by having a regular checking account with them I can carry out transactions at my local branch.  You could really keep your hands off the money by getting an X month CD depending on the time remaining until the winter. However, nowadays most CDs wouldn't earn much more interest than a savings account and most earn less than 1% of such small amounts and short time periods.

Whatever you choose, the most important thing is to have discipline. This is not meant to be investment or tax advice and you should consult with a financial professional before taking any course of action.

Let me know if you have any tips for fueling your house with your bills. I wonder at what point it becomes more economical to burn the money for heat.

Saturday, September 4, 2010

Avoiding Being Eaten by a T-Rex: Why your Software Development and Deployment Process Should Matter

Recently my wife and I re-watched Jurassic Park. When I was a little kid, I used to believe that the tropical storm was the main reason for the power outage and problems on the the island befalling the guests. Now I know that the real problem was poor IT management and processes. Use some of these best practices to avoid being a raptor's lunch.

Could you imagine hiring this guy?:

Dennis Nedry is essentially a consultant. He doesn't know much about what goes on in the park, he's only hired to fix bugs, and he's given poor resources and poorly compensated. Giving someone like that access to
your production code is just a recipe for disaster.

Scheduled & Restricted Production Deployment - Your live environment should not be free to be updated by anyone at anytime. In a continuous update-release product you should schedule production deployments for a time which is least likely to interfere with other business operations and schedule other business operation at a different time from the release. For example, early in the morning bi-weekly would be a great time to update your dino park. No tours, feedings or events should be scheduled and the weather would be generally more cooperative. A designated and trustworthy pair of developers should perform the deploy together and perform the required testing afterwards.

Who's watching this guy?

Code Review - I have a feeling that debugging the phones does not interrupt the security and power systems on the island. I also have a feeling that most people question the need to reboot those systems if they had a change log or diff for each release. A good practice is to generate such listing for each deployment and have it reviewed by a second party.  For larger changes or changes that present a problem to security, a more complete review should be performed. Also, tying into the previous practice, you should have a standard script or deploy method and any deviation should also be part of the code review process. A source control system would make finding changes easier.
One thing they did right was have source control.

Test Environment - Your development environment should never, ever be your production environment. I'm pretty sure if you are compiling and it affects the production system, you're doing something wrong. If you have a local development environment, you can run all your unit tests and make all your mistakes safely before you put everyone's life in danger.  You might not kill an entire population, like if you worked on a nuclear reactor, but you might lose important time or data. In a multi-developer environment it might be a good idea to have an individual development copy and a collective development copy. Adding an additional step in the pipeline, creating a test or practice environment, will help find errors in your deployment environment. Treat this as if you were doing an actual production deploy. If you're missing any files or there are conflicts, testing here will highlight them. Having a test plan developed for each change and running that test plan in each environment gives you the most robust management.
If you can make this you can make a simulator for your test environment.

Stakeholder Management - If IT is important to your organization, it is important to keep everyone involved on board.

Not as nice as I remembered.
Chastising your workers for "their own mistakes" of a personal nature is not a good way to keep morale high. Also, not keeping track of the progress of Nedry or properly educating him in the business side of the island was a lack of 2-way communication and fulfillment of business goals. If compensation becomes an issue, then it might be wise to consider other vendors or a different IT budget to prevent sabotage, poor performance or quitting.
"Dennis, our lives are in your hands and you've got butterfingers?". Sounds like he was important enough to be better managed.

Well I hope you learned enough to avoid becoming a snack. If you have any other best practices you use, leave them here.