Wednesday, December 7, 2011

Thursday, December 1, 2011

ColdFusion Builder 2 is a joke

Fresh install on OS X of ColdFusion Bulder 2 (TWO, the SECOND one). Typing a simple conditional, this is what I was given:

I also had to manually write the closing cfif tag. It's such a joke.

The absolute core purpose of an IDE is to be a text editor. Secondary to that are other features that are supposed to make you work better. ColdFusion Builder 2 (TWO!!!!!) completely fails on all levels as a text editor. It doesn't even function as well as notepad.exe!

Text search is finicky, Find & Replace is completely broken half the time, the UI is often unresponsive (yay Eclipse), the text cursor sometimes disappears, double-clicking folders or files in an FTP view pops up the Rename dialog every time, HTML / CF tag completion usually doesn't happen, indention is broken, function parameter tooltips obscure the place you are typing, # and " completion randomly breaks (often leaving you with a ###)...the list goes on and on.

Adobe has a big feature list on their site. I'm thinking maybe they should go back and use some resources to fix the parts where you type things into the computer, you know, the whole point of the thing.

Sunday, September 12, 2010

I hear the barrier to entry to getting into the car manufacturing business is low, too

This article is hilarious. It sounds like a perfectly normal business-y article until to you get to this gem:
The barrier to entry on the Instant concept is apparently low, and Yahoo and Microsoft's Bing have both tested the waters, according to a report in Search Engine Land.
(emphasis mine)

So apparently Dawn Kawamoto, "Technology Reporter" for Daily Finance, thinks the barrier to entry to searching the entire internet instantly is low.

I don't even know what to say.

Saturday, September 11, 2010

How to make a terrible landing page

I'm interested in advertising Kittyball to help promote it to a broader audience than "people who search kitty in the App Store and scroll waaay down", so I was looking to spend a few hundred dollars on ads. I happened to see an ad on Gamasutra for GAO, so I clicked it. Here's what I got:

Admire the graphs! Gaze in awe at the pile of logos! Marvel at screenshots of tables! Apply for GAO advertiser account!


Why should I apply if I have no idea what I'll get?

So I sent GAO this email with their "contact us" form:
RE: GAO: your landing page sucks :(

I clicked an ad banner for your site from Gamasutra ( )
and *nothing* on the landing page tells me why I should do business with
you. What will it cost me? What benefits will I get? Why are you better
than your competitors? I have no idea!

I see that you've got some reach, but I have no frame of reference for that
so I don't care.
You've got some clients, but they're not me, so I don't care.
You've got "cutting edge functionality" but I don't care.
I can apply for an account, but why?
and they helpfully replied with:
Good day,

We are pleased to have confirmation that our landing page only appeals to
people who care.

Best Wishes,

Valera Koltsov
Game Advertising Online
Thanks guys! Guess I'll take my money elsewhere!

A good landing page should directly tell the viewer what benefits they will receive. A good landing page answers the question of "why should I give you my money?"

Friday, September 10, 2010

Project Ten Dollar

EA has begun a new initiative to try and stop (or at least slow) used game sales  I don't think this is going to work as well as they hope.

A and B go to GameStop to buy a game:

Here's the old flow:
1) A buys game for $60
2) A beats game and sells to GameStop for $40, game "costs" him $20
3) B buys game for $50 from GameStop, GameStop nets $10 for holding the game and B saves $10, and most importantly EA thinks they're losing $60

Here's the new flow in EA's magical fairyland:
1) A buys game for $60
2) A sells game to GameStop for $40
3) B buys game from GameStop for $50, goes home and sees that some of it is disabled, missing, or inaccessible, curses GameStop, never buys a used game again, and only buys New, Quality Electronics Arts Games(r).  EA Wins, hooray!

Here's what is going to really happen:
1) A looks at used games price list, sees that game is only worth $10 used in buyback, now he can't save anything by selling back, so the game is worth less to him
2) A buys a different game
3) B is faced with a choice between "broken" used games, or used games that have full functionality, B buys a different game.  EA blames pirates for drop in game sales.

Thursday, August 19, 2010

Kittyball go!

My game, Kittyball, just went live!

After several months of work, and all of Sarah's art contributions, it's nice to finally see it up for sale!

Tuesday, August 17, 2010

New Project

I have started a project to create a site for developers and designers to share and collaborate on UI mockups and designs.

In the past, I have found it extremely frustrating to work on UI design with the current tools available.  Trading zips of files through email and giant PDFs of mockup screens on shared storage are terrible ways to work.

It's hard to keep track of different versions.
It's hard to keep track of comments everyone has made.
It's hard for more than 2 people to be involved in the process.
It's hard to highlight changes.

I'm going to solve all of those problems.

Kittyball submitted!

I somehow forgot to mention this when I did it, but I submitted KittyBall to the App Store on Monday, August 9th.  I guess we'll see what Apple thinks of it.

Tuesday, August 3, 2010

The Modern Liberal Goal Part 2: Work as a game

So the question is:
If the liberal goal [everyone only has to work as much as they want to] is achieved, what is there to do for someone seeking to become wealthy? What can we do with an army of people who don't ever have to work for a living?
Now we've got two types of people in the world: those producing less than they consume, and those producing more.

The government subsidizes people who are overconsuming, so they never have to work if they don't want to.

So what's a future capitalist to do?

We have to make them want to work.

We can do this in two ways: make work fun, or make work easy.

How do we make work fun?
Make it into a game! People will put enormous effort into games voluntarily.

We've already got some great business models for this:

Work hard for free!
Open source software and Wikipedia use this model.
"Hey, give us tons of skilled labor and get no money in return!"

Work hard for social benefits!
Facebook, Twitter, LinkedIn, MySpace, and every social networking site ever.
"Hey, give us tons of information to help target ads!"

Work hard to create value for paying users!
Zynga, Chinese MMOs (see slide 16 of this excellent presentation). We can make a free-to-play gameworld where our non-paying users add value for our paying users to take advantage of.
"Pay for our game, you can kill noobs!"
noobs: "noooo *adds value*"

How do we make work easy?
Bring it to them! Who minds working from home? Idiots, that's who. All the cool people want to work from home.

What have we got?

Use the massively parallel processor in your head to solve problems!
Amazon's Mechanical Turk lets you solve a single tiny task and get a single tiny amount of money.
"Transcribe this for a quarter!"

Write an essay for $10!
Demand Studios will pay you to write essays for them, which they then spam all over the internet and place ads on. It solves two problems: how do we fill the internet with more crap, and how do we get people to write more crap?
"Write some crap!"

Make some media and we'll sell it and give you a cut!
Infinite stock photography sites do this, as well as the Envato network for sounds, music, graphics, and other media.
"Make a song, we'll give you a few dollars per download!"

Ok, that's enough examples!
Yay! I hope you're convinced that our brave new world of consumers is not necessarily a bleak dystopia. Sure, the government will take a ton of our money, and redistribute it to the less worthy, but that doesn't mean we can't still extract some value from them!


Today I started at Amazon.
Amazon is strangely a software company that sells retail products.  I'm not sure how that happened, but I assume Jeff Bezos is to thank for it.

Thanks, Jeff Bezos.

So now I am officially a Software Design Engineer - Gift Cards User Experience.  If you have any questions about being an SDEGCUE, feel free to ask me.

Sunday, August 1, 2010

The Modern Liberal Goal

A while ago, I tried to answer a simple question as a thought experiment: “what is the goal of the ‘modern liberal’ philosophy?”

I believe the answer is “everyone only has to work as much as they want to”.
Why do I believe that?
In the United States, we have had a history of creating social welfare programs, and they tend to stick around. Welfare, Medicaid, WIC (the modern food stamps), unemployment, and disability are generally targeted at the poor and disadvantaged. Medicare and Social Security are targeted at the old, who often become poor as a combination of reduced earning ability and increasing health costs. Unemployment, in particular, simply gives money to people who aren't earning any. It's stated purpose is to help people "get back on their feet", but for practical purposes, it can be collected for a year (at least in Texas) without having to do anything in particular.

These welfare programs spring out of a philosophy of "need". I think there's a certain level of guilt that comes from rightfully earning the things we need, and continuing onward to earn things we want, while other people fail to even meet their own basic needs. Governments then codify this guilt into programs to take money from those who've earned it and give it, in varying forms, to those who haven't.

In a republic, these programs have a fair amount of stickiness due to taking money from a few voters and giving it to many voters.

Why do I think it is likely to happen?
Technology has given the most intelligent a massive lever with which to move the world and create value. A rich person today wields more power than nations of the past. Thanks to these forces, there is more marginal wealth per person at the top. Bill Gates easily met his own needs many years and many dollars ago. If we take 99% of his money, we can provide for probably tens or even hundreds of thousands of people. I think there is social pressure to do this.

Along with amplifying the top tier's ability to create wealth, technology also lowers the bar for the poor to meet their basic needs. Food is cheap compared to any time in human history. It becomes easier and easier for one person to meet their own needs.

Marshall Brain's Manna provides in interesting guess as to two alternative futures, one ruled by the tyranny of the rich, who provide for the poor, but restrict their freedom to virtually nothing, and a more communist society where everyone is "rich" by pooling resources.

If the liberal goal is achieved, what is there to do for someone seeking to become wealthy? What can we do with an army of people who don't ever have to work for a living?

I'll tell you tomorrow.

Sunday, June 6, 2010

KittyBall evolved!

The evolution of KittyBall, in screenshots (all art is done by the lovely and talented Sarah Householder):

(March 28, 2010)
The very first prototype, just some debug lines with Box2d physics, and placeholder art. Creates lines just in time as you move to the right, crashes after 30 or so lines:

Added KittyBall art, first test of texturing the ground with custom tiles:

Figured out how to fill the ground in with OpenGL ES polygons. This method is fragile and had to be replaced later:

Filled the sky with a nice blue gradient:

Fixed the ground fill, added cute background clouds on a parallaxed scrolling layer:

Experiment with tinting the sky to match the time of day, pulled for final version:

KittyBall shoots stars out when he bonks the ground:

Added a sun in the background, as well as a rotating sky tint (that's what broke the ground filling), also pictured is the "you are tapping the screen" spiral, which looks like ass (because I made it), so it's also gone in the final version:

First pass at adding a DogCube enemy to chase you.  Thanks random dog image I found online! :

Playing around with adding some kind of rain or snow effect.  Didn't like the look or additional visual complexity, eventually pulled for final:

DogCube achieves full cuteness:

Added indicator to show how close DogCube is to getting you, and signs to mark your progress through the level:

Improved the sign:

Added placeholder background mountains, more parallaxed layers:

Mountains get cute upgrade:

Added more ground tiles, pause button:

(June 6, 2010)
Hey, it's the moon!  Sign is fixed to match overall look and feel:

Sunday, May 2, 2010


Now that I'm married, development can continue! Worked on adding signs to add distance measurements so a player can see how far they've gotten (if their eyes can track a rapidly moving sign). Adding polish to a game is a very time-consuming but rewarding part of game development.

iPhone OS 4.0's "double-tap to show running tasks" feature is very helpful in getting impromptu screen captures to inspect features.

Wednesday, April 21, 2010

Worked around

I found a workaround which is to completely redo the entire way I was planning to show an end-of-game screen. Stupid Cocos2d. It's been nothing but helpful up to this point, but I could not figure out how to unpause it.

The game is now functionally complete, so I'm basically looking at polish + market + ship.

Tuesday, April 20, 2010


Argh, I am totally stuck on a bug with ReplaceScene. Cocos2d seems to have problems with a scene replacing itself.

I may eventually have to just work around this bug.

Monday, April 19, 2010

Fucking clown shoes

So my apartment was burglarized on Friday when I wasn't home. My iMac (with all of my pictures from the past 3 or 4 years, not backed up because I'm an idiot) among many other things were taken, mostly electronics. It got me thinking, all of these devices have network cards in them, why the fuck do the manufacturers not track these things when they show up on the net?

Imagine the day where stealing an Internet-enabled device is useless because it phones home as soon as it hops online. Sure, measures could be taken to circumvent phoning home, but it would really be bad news for small time criminals. I know software that does this exists, but why isn't that shit considered part of the base functionality? It's such a stupid omission.

If Apple tracked every unique IP address per computer and gave me access, I could just find out exactly where that machine got online, call the police and say "it's near / at this address". Done. Would probably even be able to recover my pictures with some good HD tools. Unfortunately it's not the future yet, so we're stuck dealing with the police who don't really give a shit and have better things to do. Thus, electronics will continue to be an awesome reason to break into people's homes. Suck.

It's a game!

My game is now an actual game instead of a tech demo. It can be played, it has a victory (really a loss) condition, and it can be restarted. Woo!

I feel like this app will mostly serve as a learning experience and I'll be able to do much cooler stuff in the future in a lot less time.