Great Interview Questions

Interviewing, Life and Philosophy, Lists, Tips
Interviewing is not a one-sided conversation. If you land a job by only worrying about successfully impressing interviewers, you will almost certainly be surprised, and you may be unhappy once you start the job. It is critical that you understand that an interview is not about making the company happy and fitting their mold, it is about finding a good match for both you and the company. How do you make a good choice in choosing the next place to work? Simple, you ask questions! And how do you make the best possible choice? You put some effort in and come up with some great interview questions. Don't do what some of your crappy interviewers will do and google something random right before going to the interview, actually take some…
Read More

Hyphenated Names and Job Security

The hyphenated name fad is a conspiracy to keep software engineering jobs secure. What will we do 20 years from now (and every 20 after) when two hyphenated named people marry? We'll have a y2k-scale crisis of last name field lengths in forms and databases, that's what. When Mike Smith-Jones-Anderson-Smith-Snow marries Jane Doe-Jones-Anderson-Jackson-Williams, and little Bobby Tables is born (with last name Smith-Jones-Anderson-Smith-Snow-Doe-Jones-Anderson-Jackson-Williams, 67 characters), all hell will break loose. Then, 20 years later, when the common last name has 120+ characters, all hell will break loose all over again. That's why I always make my last name db columns type longtext. Edit: Apparently we've been here before, check out this comment by bediger4000 from hacker news on this post: Laugh at this guy all you want - the late…
Read More

IOS 6 app store crash on your iPod touch 4? Restore.

Tips, What I Just Learned
For weeks the app store has crashed constantly on my iPod Touch 4th gen after the over-the-air IOS 6 update. Restoring the iTouch to a fresh install of 6.0 on iTunes fixed the problem and now the app store works better, not perfect, but better. Symptoms: I would search for something, and swiping left or right on the cards would crash - sometimes I would be able to see some cards if I let the app sit for a half minute and pre-fetch everything, but when I got to item 24 or so I'd be gauranteed a crash again. I'd have similar problems browsing categories of apps and trying to install them. Sometimes I'd tap the "Free" or "$1.99" button for an app, and the button label would switch to…
Read More

IOS reminds me of IE

IOS Product Development, Midnight Ramblings, Tips, What I Just Learned
Developing for IOS is exactly like developing for IE. First, you knock the easy stuff out that *just works* simply without massive confusion. In browser land that means do your work in chrome or firefox first, whereas in IOS you basically do everything except auto-rotation first. Then, for the last step, you spend as much time handling IE bugs or IOS auto rotation hell as you spent developing up to that point. edit: The trick in IOS 6+ seems to be something like this inside your view controller.. - (NSUInteger)supportedInterfaceOrientations { return UIInterfaceOrientationMaskAll; } - (void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration { CGRect screenRect = [[UIScreen mainScreen] bounds]; screenRect = CGRectMake(0, 0, screenRect.size.width, screenRect.size.height); //anchor to 0,0 if (UIInterfaceOrientationIsLandscape(toInterfaceOrientation)) { //swap width & height screenRect = CGRectMake(0, 0, screenRect.size.height, screenRect.size.width); } self.view.frame = screenRect;…
Read More

School of Code Part 1: Squirrel (SQL)

School of Code
My brother-in-law recently moved into a position where he needs to pick up some systems programming basics. I could write him long emails about which references to check out, or I could just write the info here, so you too can benefit. For starters, my brother-in-law needs to learn the basics of SQL for reporting needs. SQL (or Squirrel, as my wife calls it), is a standarized database querying language. To understand SQL, you need to understand a database. A database is a system that organizes data, like a spreadsheet sort of, and provides powerful tools to add, change, and inspect that data. Almost every website you interact with is essentially a database, with software in front of that database to make pretty web pages to push and pull data…
Read More

So-called “Terrible” stock performance

Midnight Ramblings
A few days ago, Google slipped up in releasing quarterly earnings reports before they were PR-ified, popular media referred to their results as 'terrible': What Page couldn’t apologize for, however, is that Google’s results were pretty terrible. The company’s profits plunged 20 percent from a year ago, according to the Wall Street Journal (source) Today, AMD released their quarterly, and results were also 'terrible': Just one day after the company posted pretty terrible quarterly earnings (“Net loss $157 million, loss per share $0.21, operating loss $131 million"), followed by a 16 percent drop in the company's stock price and job cuts of 1,800 (15 percent of its global workforce), two financial analysts have now downgraded the company. (source) In both cases, the companies made less than expected, except, Google's so-called…
Read More

Users aren’t stupid, your UI is.

IOS Product Development, Life and Philosophy, Midnight Ramblings
tl;dr; version: Get your head out of your ass, stop adding complex features that 90% of the world won't care for. Instead, learn to stop, breathe, and make your software products simple by focusing on usability consistently. Users aren't stupid, your UI is. In a big bad world of federated software product development, Usability is usually a bullet item way down at the bottom of a list of priorities for anyone but designers, at best. When your entire product team (including designers, developers, qa, etc) lives and breathes a particular software product for a period of months or years, *any* product becomes easy to understand. It's easy to understand because you're paid to think about, live, and breathe that product for 8 hours a day or better, for very long…
Read More

Regularly losing hard drives? Try clean power.

A few years back, I was losing 1 to 2 hard drives a year, every year. I was purchasing quality drives (for consumer grade..), and it did not seem to matter if a drive was internal or external, the life span was just junk. Your computer's parts are highly sensitive pieces of equipment in terms of power. They operate correctly in a narrow range of voltage levels and wattage. Giving your hard drives or motherboard a bit too much juice or just a tad too little, and your hardware could become damaged. There are three basic problems with power that you could encounter. I'll bet you've only heard of these two: A surge or spike in power - this is when something goes wrong up the line from your house,…
Read More

The story of Freddie Kreuger, the brave three-legged cat.

Life and Philosophy, Midnight Ramblings, Photo Posts
This is the story of Freddie Kreuger, the cat who taught me what patience and love are, and what it means to be brave. Freddie Kreuger and her 3 siblings were born in a neighbor's backyard in May of 2010. The four kittens were born to a feral mother, who we mistakenly named "Mr. Bond" before we realized she was a she. Mr Bond was named as such, because she was very sneaky and clearly feral and scared. She would only come to our back porch to eat in the dead of night, and only when other animals were not around. One evening Mr Bond failed her mission, and a neighbor's cat, named Cinderella, fell in love with her and gave her babies. Cinderella, a sweet male cat, was jokingly…
Read More