Monday, March 23, 2015


March 23, 2015
Time to call it: For millions, 401(k) is a failure

That's the median amount in a 401(k) savings account, according to a recent report by the Employee Benefit Research Institute.

Prosperity, baby. That's what I'm talking about.


mab said...

This is why we need to privatize social security!

Stagflationary Mark said...


Indeed! We need to increase the serious risk taking too. 10x leverage! That means we'll start with $184,330 right out of the gate, minus $18,433 in private investment fees of course. What's 10% among friends?

Increased risk is the only way to ensure the absolute safety of the safety net! ;)

mab said...

Somewhere I recall reading or hearing that people need $2.5 million to retire comfortably.

If that's the case, we're going to need more than 100X leverage, lol!

We can't "afford" social security? I'd say we can't afford NOT to have social security.

Stagflationary Mark said...


If that's the case, we're going to need more than 100X leverage, lol!

Not a problem! I can give you at least that much leverage!!

In the 7th race, pick "Blind 0le 3-Legged Speedster McGee" to show. Can't miss him. He'll be wearing a blinder over his good eye, he's got a bit of a limp, and the jockey's out sick so he'll be ridden instead by his morbidly obese owner.

Then pray that at least 7 of the other 9 horses die of mysterious causes before the finish line.

I normally don't give out "sure thing" horse racing tips here, but desperate times call for desperate actions. ;)

Troy said...

Gen Y's going to need less to retire on because they will have their phones to occupy their time.

Speaking of which, I'm super-psyched about the rumors of Apple finally pushing out an App Store for their new Apple TV later this year.

Since September I've been messing around with Xamarin's C# binding of OS X and iOS API, and it's pretty solid now.

(I was also eagerly awaiting Unity's 5.0 release, but found it to be still pretty crufty on the game development edit/compile/run turn-around side, while I have no complaints working within Xamarin Studio.)

Got about 80 days to the WWDC keynote, just the right amount of time to get what I've got into "alpha" / "feature complete" more or less.

What to do, what to do . . . weird having a totally open platform again. Gotta not miss this one!

I was hoping MSFT or Sony would open their platforms for hobby dev, but it looks like Apple will beat them to it.

There's also nVidia's Shield console coming out, but that's a bag of pain from the API side, basically requiring Unity to get anything going.

Stagflationary Mark said...


I would love to play a Dai Senryaku and/or a Disgaea style game on my iPhone. There's a huge void, at least for me, that needs filling.

I would personally pay top dollar to play these games. I can't be the only one, can I? I sure hope not!!

Troy said...

yeah, the beauty of this Apple TV direction is that worst case if it's an unfounded rumor, I'll have a good codebase to redeploy to iPad and iPhone, since Apple has SceneKit and SpriteKit also on iOS now.

Tricky difference is TV is game controller and iOS is touchscreen . . . and iPhone's screen is so tiny!

But C# is so, so nice compared to C or C++.

With C# 3.0 back in 2007 they added "lambda" expressions of the form (params) => { block of code aka "closure"} and in 2012's 5.0 they added "async" programming, which allows functions to return control back to the caller but still keep working on the task in the background (similar to Unix's fork() system call).

Combined, this forms a code approach of passing a "closure" code block as a parameter to an async function, that the called function will call upon successful completion of the background task.

In my code it looks like this:

DataStore.LoadImageAsync(Path.Combine(image_dir, image_name),
(image) => GCD.MainQueue.DispatchAsync(() => CreateTexture(image)));

This code is telling my DataStore class to load the image in the background and call CreateTexture() with it when loaded.

GCD is Apple's "Grand Central Dispatch" or multiprocessing API, MainQueue is the main thread (which is necessary for SceneKit's OpenGL texture loading to work correctly, and DispatchAsync defers the call to the next time the main loop is idle (i.e. after the current run of the main event loop is completed).

C# also introduces a "binding" layer between client code and the native frameworks, there's a lot of "marshaling" going on to get the C# world working correctly with the native Objective C and straight C Apple frameworks.

This can be a good thing as it allows convenience and customization code to be added at the lowest level, streamlining access to clunky native constructs for the rest of the code.

Xamarin's big win though is their stuff works on Android and of course Windows, too!

Sweet! If Microsoft had had any sense they'd have fought to make C# a first-class citizen on Android and iOS much sooner.

Stagflationary Mark said...


Ack! Code! You've just given me a flashback to my former employer.

Holy crap. It's been 16 years. Does PTSD ever go away?

In all seriousness, I think I really do have it. Getting married, buying a first house, taking out a huge mortgage loan, getting divorced with all that debt and only one income, having a massive accounting scandal at my job, being the lead software engineer on a million dollar doomed project, and surviving many rounds of layoffs only to eventually quit took a bit out of me. All of that in just two years. Even the investment that really paid off for me was stressful, since any change of that magnitude is.

Oh yeah, then my dad died, my dog got mouth cancer, and I eventually had to put her down. When it rains it pours.

I have no tolerance left for stress. The reserves are gone and have never refilled.

Troy said...

yeah I hear you, the late 90s were no picnic for me, either, and they following stint at Apple was rather traumatic, too.

For me though picking the exact tools and APIs to work in is critical to my happiness.

The intersection of C#, Mobile Development, Apple APIs, and Strategy Games is a strange place to be, but I'm happiest here.

I feel at home and/or still living the dream, LOL

Stagflationary Mark said...


Good for you!! Very happy for you! :)

I know that feeling as well, because it was my best job that eventually became my worst job.

There was a time that I actually worked on the weekends because I enjoyed it.

I remember one night in particular. It was about 10pm. My office overlooked a small urban lake. It was just beautiful and I stared at it gor s hood five minutes. Things were going awesome at the company. The project was ahead of schedule. I had just officially been promoted to lead (not that the job changed, as I was acting as the lead anyway).

Things got even better from there. One of the next projects was a hit. Made it to #1 in Consumer Reports.

Something changed though. Word got back to me that upper management called it a c+ product and a fluke. Congrats to them for creating a self-fulfilling prophecy, for I no longer enjoyed my job as much and lost motivation. Go figure.

And then the company wide morale problems started to hit, and hit hard. Game over, man. Game over.

Treat employees like crap and eventually you'll only have crappy employees. Big shocker.