I'm blogging about programming, but ... hey look over there - it's something shiny!
Thursday, September 06, 2012
"Don't Just Do Something, Sit There!"
During a recent upgrade I panicked. We were upgrading our system to be on a Universal Time so all the countries could schedule and see events in their local time (don't get me started on daylight savings time).
Our team in India ran my upgrade script to convert all the historical records to Universal Time from the local server time, but my web application was still showing the old time, just as if the script had not run. I spoke with the person doing the SQL script execution and he assumed me he already ran it.
But our system wasn't showing the new times. This is when I panicked. Instead of carefully thinking the situation through and talking with some other knowledgeable people, I had the India team rerun the script. Then it hit me. The servers where caching the times. The database had really been updated, but the app was clever enough to cache the time to save load on the database.
I restart the web app and sure enough the historic times were now changed by twice the intended amount. After rerunning the upgrade script with a negative time to set the clock back everything was fine. The upgrade proceeded and I learned a valuable lesson,
"Don't just do something, sit there! (and think)."
Saturday, September 01, 2012
Keeping up with Tech
Besides the bizzion tech blogs and twitter feeds which litter the internet, I find book publishers' email newsletters to be a good source of what is new and upcoming in the tech field.
The advantage of dead-tree publishers is that they take the time to see what is really viable and take a little longer term view than web-only sources.
A print publisher has more at stake if a book bombs - a warehouse full of unsold books.
A few that I subscribe to:
The Pragmatic Programmer newsletters and magazines.
Mannings subscribe to Newsletter.
The advantage of dead-tree publishers is that they take the time to see what is really viable and take a little longer term view than web-only sources.
A print publisher has more at stake if a book bombs - a warehouse full of unsold books.
A few that I subscribe to:
The Pragmatic Programmer newsletters and magazines.
Mannings subscribe to Newsletter.
The Myth of the Better Alternative
For some reason, we believe the Myth of a Better Alternative. We believe that, if someone or something is bad, there must be a Better Alternative.
We see an evil despot overseas and believe that if he were overthrown, the Better Alternative - democracy and freedom - would flower.
The problem is, of course, we don't know who will rise to power after a bad dictator is disposed. Will the new government be better? Hopefully, but it could easily be worse. We just don't know. We can't know. Removing a dictator could result in a long, bloody civil war that kills thousands of people and literally destroys the country, only to be followed by a more evil dictator.
Czar Nicholas was not the best ruler, but I think many Russians - the 20 million killed by Stalin come to mind - would have preferred the Czar to the communists.
The United States does not need to intervene everywhere in the world that has what we consider a less than optimal government. We just can't afford it. Besides, we don't know what's best for other countries. Why don't we just save thousands of our soldier's lives, trillions of dollars and let the rest of the world work out their own problems?
The problem is, of course, we don't know who will rise to power after a bad dictator is disposed. Will the new government be better? Hopefully, but it could easily be worse. We just don't know. We can't know. Removing a dictator could result in a long, bloody civil war that kills thousands of people and literally destroys the country, only to be followed by a more evil dictator.
Czar Nicholas was not the best ruler, but I think many Russians - the 20 million killed by Stalin come to mind - would have preferred the Czar to the communists.
The United States does not need to intervene everywhere in the world that has what we consider a less than optimal government. We just can't afford it. Besides, we don't know what's best for other countries. Why don't we just save thousands of our soldier's lives, trillions of dollars and let the rest of the world work out their own problems?
Friday, August 10, 2012
Investing Tip: Be Careful of Target Funds Fees
You've probably heard the old saying, "You can learn for other people's mistakes, but sometimes you have to be the other people."
I was the "other people" in my investments in target funds.
I was excited to hear about Target funds - funds that target a specific retirement year, like 2025, and automatically move assets into more conservative investments. I thought this would be great; I wouldn't have to worry about rebalancing my retirement fund - and my financial advisor recommended it.
But what I didn't research carefully enough is the management fees. My 2025 Target fund had a fee of .74% per year and was composed of index funds in US stocks, World bonds, International stocks. If you take the weighted average of my Target fund's components, management fees were only .26%. So I was paying .48% interest, hundreds of dollars, a year for the Target fund to slowly move to a more conservative balance. For half a percent interest, I could make a few trades at the end of the year.
Some target funds are a good deal. At Vanguard my target fund is cheaper than its weighted parts.
Moral of the story: Research your target funds and make sure the management fees are not excessive. Learn from my mistake so you don't have to be the "other people".
I was excited to hear about Target funds - funds that target a specific retirement year, like 2025, and automatically move assets into more conservative investments. I thought this would be great; I wouldn't have to worry about rebalancing my retirement fund - and my financial advisor recommended it.
But what I didn't research carefully enough is the management fees. My 2025 Target fund had a fee of .74% per year and was composed of index funds in US stocks, World bonds, International stocks. If you take the weighted average of my Target fund's components, management fees were only .26%. So I was paying .48% interest, hundreds of dollars, a year for the Target fund to slowly move to a more conservative balance. For half a percent interest, I could make a few trades at the end of the year.
Some target funds are a good deal. At Vanguard my target fund is cheaper than its weighted parts.
Moral of the story: Research your target funds and make sure the management fees are not excessive. Learn from my mistake so you don't have to be the "other people".
Saturday, August 04, 2012
In Mountain Lion "invert colors" shortcut not working
I upgraded my shiny new macbookpro to Mountain Lion and the keyboard shortcut for "Invert Colors" (ctl-alt-command-8) stopped working. To re-enable this, go to "Preferences/Keyboard/Keyboard Shortcuts/Accessibility" and check "Invert Colors".
(Apparently too many Windows users were visiting Apple stores and turning on the "Invert Colors" for all the machines)
Labels:
accessibility,
color,
mac,
macos,
mountain lion,
OSX
Monday, July 09, 2012
Pictures from at Austin .Net Users Group, July 9, 2012
Gabriel Schenker spoke to 45 people at the Austin .Net User's Group tonight about Command-Query Responsibility Segregation (CQRS) and Event Sourcing (ES). Here's a few photos, in case you wonder what an ADNUG meeting looks like:
A few of my notes:
- polyglotprogrammers.org are meeting the 2nd and 4th Thursdays of the month, 6:00 - 9:00 pm to code and learn new languages here in Austin. Meeting at Headspring's new headquarters now.
- www.aspconf.net will be live screencast with big names.
- Gabriel Schenker wrote a book on NHibernate, but is using no database on his current project.
- Using CQRS with ES can be taken to the max and yield not an Object Oriented system but a Functional design.
- Look Ma, no database. In his example, data was stored as JSON objects in plain system files using Google Protocol Buffer serialization. A GUID was embedded in the filename with an object name prefix, recipe-7c9e6679-7425-40de-944b-e07fc1f90ae7.txt
- Since some files systems (cough, cough, Windows ...) get slow with over 10,000 files, the files are distributed over many directories with a hash of the filename indicating the directory.
- Gabriel's point of view is that it's simpler to write your own document store database, and Inversion of Control container than to incur the cost and overhead of using something like RavenDB if you don't need all the features.
Tuesday, July 03, 2012
Importing Cableone email into a new Gmail account
When a friend was physically moving and needed to retire their Cableone.com account and move to a GMail account, I thought it would be quite easy. After an hour I realized, not so much.
Here's the tricky part, Cableone.com mail accounts are already hosted by Google, so the pop account questions asked during GMail import are not what you would expect.
In Gmail select "Accounts and Import", then "Import mail and contacts"
Email address is really "myemail@cableone.net", the ".net" threw me.
Pop server is "pop.gmail.com"
Port is "995", select "edit" and select "SSL".
Email address is really "myemail@cableone.net", the ".net" threw me.
Pop server is "pop.gmail.com"
Port is "995", select "edit" and select "SSL".
Subscribe to:
Posts (Atom)



