Friday, July 6, 2012

Important Programming Topics That Don't Often Come Up in Job Interviews

Been thinking on and off about job interviews lately, and realized there are several important topics that don't seem to come up very often. Thought I'd make a list.

  • Threading
  • Recursion
  • Memory management
  • HTTP lifecycle (requests, sockets, threading, etc.)
  • Framework architecture
  • Time systems (UTC system, time zones, etc.)

Of those, I occasionally get questions on threading, recursion, and memory management. When memory management comes up, it's usually in reference to algorithm performance and memory optimization (e.g. hash vs. red-black, arrays vs. linked lists, etc.). Which is important, but there's a whole lot more to memory management, like garbage collection, memory leaks, etc.

I've been a Java web programmer for 12 years but NEVER been asked to describe how HTTP works. I've never been asked about sockets, request threading models, or even about application vs. session scope. I've also never been asked to describe how Hibernate, Struts, Spring, or any other framework actually works. I have been asked how JSP's work. But I've never been asked about Java servlets, filters, or authentication.

And while every programmer eventually has to deal with time systems and time zones, no one ever asks about them. I'm constantly amazed at the number of devs who think it's a good idea to simply compare timestamps without consideration of time zone, DST, leap year, leap second, etc.

I can certainly see where a junior or even a mid-level developer might not have much depth in any of these areas. For the kind of work they're doing they don't need it. But I think it would still be good to bring these topics up in every interview, if only to learn whether a younger dev might have some hidden talent.

I would expect senior developers to have mastered at least two of these topics, and to be familiar with all of them. No individual will know everything, but I'd hate to hire a senior dev that couldn't at least talk intelligently about each topic. A senior dev doesn't just design, code, and test, but also mentors younger devs. They need more than just "tutorial" knowledge, they need the first principles as well. Or at least know where to find them ;)

Thursday, October 20, 2011

Laugh Out Loud, Freeway Edition

Just saw a funny post on autoblog.com. Someone in California decided that banning hybrids from freeway HOV lanes would reduce traffic congestion. Uh, not so much.
Whodathunk that banning hybrid vehicles from California's High Occupancy Vehicle (HOV) lanes would lead to additional congestion on the state's highways and even longer commute times? Transportation engineers at the University of California, Berkeley did, and that's why the University's researchers are now pushing for HOV access to be granted to more vehicles, not less.
Wow, ya think? Who's running CDOT these days, Gurney the Green Dinosaur, who never got past 2nd-grade math? Here you've got this perfectly good freeway with X lanes. But we don't want everyone to use the whole thing, so we restrict people from using the leftmost Y lanes. Now instead of distributing traffic load across all lanes, it can only freely distribute across the rightmost X-Y lanes. OF COURSE traffic will become more congested in those lanes: you've got more traffic on them. And OF COURSE traffic will get worse for all lanes, because the privileged users won't drive exclusively in the restricted lanes, at least not if they want to enter or exit the freeway. This causes lane changes, which slows down everyone.

It's a perfect example of why price controls don't work.

(H/T Instapundit)

Friday, August 26, 2011

Laugh Out Loud, Paul Krugman Edition

Paul Krugman thinks Ben Bernanke can solve the nation's economic problems by having the Fed perform some or all of the following:
  • Purchase long-term government debt to push down interest rates and thus borrowing costs
  • "[Announce] that short-term interest rates would stay near zero for an extended period, to further reduce long-term rates"
  • "[Announce] that the bank was seeking moderate inflation, 'setting a target in the 3-4% range for inflation, to be maintained for a number of years,' which would encourage borrowing and discourage people from hoarding cash" (emphasis mine)
  • Depreciate the dollar

I'm no economist, and I never gave economic advice to Enron, but even I can see the holes in these proposals. First, the Fed's been buying government debt for two years in order to lower interest rates, but private borrowing hasn't increased. Second, as Krugman notes, the Fed has all but announced that short-term rates would stay zero through mid-2013. Call me stupid, but how is a bleak economic forecast for 2012 supposed to increase businesses' and consumers' confidence? Third (I'm taking this out of order), the dollar has already been depreciated against world currencies. In fact it's been depreciating for years. And yet imports continue to rise and exports continue to fall. How does that help the economy?

But here's what really got me laughing: years worth of increased inflation to "discourage people from hoarding cash." Who is he talking about? Who in the world is hoarding cash right now?! Who even has cash to hoard?! Is he talking about large corporations like Apple, Google, and GE, who according to their 2011 Q2 filings had cash reserves of $12, $10 and $91 billion respectively? That's a lot of cash, to be sure. But why would increased inflation motivate these companies to spend more? What would they spend it on? In any case Krugman doesn't say "companies from hoarding cash," he says "discourage people." What does he think "people" will do with all this cash he thinks they've hoarded? Buy more Chinese imports? Buy real estate in Detroit? Invest in precious metals? Trade in their SUV's for sleek new EV's?

Saturday, August 6, 2011

Arctic Ice Tipping? Maybe Not

BBC News reports a Danish research team is suggesting that the Arctic ice tipping point is not likely under current conditions.
Dr Funder and his team say their data shows a clear connection between temperature and the amount of sea ice. The researchers concluded that for about 3,000 years, during a period called the Holocene Climate Optimum, there was more open water and far less ice than today - probably less than 50% of the minimum Arctic sea ice recorded in 2007.

But the researcher says that even with a loss of this size, the sea ice will not reach a point of no return.

"I think we can say that with the loss of 50% of the current ice, the tipping point wasn't reached."
Hmm.

Friday, August 5, 2011

When I Grow Up, I Want to Be As Smart As Eugene Volokh

Others have been punditing on the rhetoric from the recent debt ceiling debate/crisis, but I think Volokh has the best analysis...
...when people are exercising whatever existing legal and constitutional rights they have to withhold their cooperation, and to threaten to withhold their cooperation, I don’t think that labeling them “extortionists” or “hostage-takers” is a useful analogy. If you want people to work with you, to give you their votes, or to promise to pay for more debts, you may have to make concessions that you shouldn’t have to make when all you want is for people to leave you and your property alone.
If Mr. Volokh ever chooses to run for President, he's got my vote.

Thursday, July 28, 2011

Warming? Not As Much

Roy Spencer of NASA has a study showing atmospheric heat has been dissipating much faster than predicted by UN climate models.

Tuesday, July 12, 2011

Laugh Out Loud, Robert Reich Edition

Reich's a smart guy. I usually learn something when I read his stuff. But not today.

He's attacking the President for not having a good jobs plan. Fair enough, the President deserves such attacks. Reich writes:
This job recession shows no sign of ending. It can no longer be blamed on supply-side disruptions from Japan, Europe's debt crisis, high oil prices, or bad weather.

We're in a vicious cycle where consumers won't buy more because they're scared of losing their jobs and their pay is dropping. And businesses won't hire because they don't have enough customers.

Hard to argue with that. But as part of his solution, he suggests (emphasis mine):
Second, we'll recreate the WPA and Civilian Conservation Corps -- two of the most successful job innovations of the New Deal -- and put people back to work directly. The long-term unemployed will help rebuild our roads and bridges, ports and levees, and provide needed services in our schools and hospitals. Young people who can't find jobs will reclaim and improve our national parklands, restore urban parks and public spaces, recycle products and materials, and insulate public buildings and homes.

Holy green gravy. He's done it! He's solved the nation's problems! We'll just take all those chronically unemployed middle-managers, salesmen, lawyers and put them to work building stuff. What a great idea!

And all those urban and suburban youth who can't get jobs in fast food? We'll send them out into the wilderness, where they will also build stuff. Well, except for the ones sorting stinky milk cartons and tuna fish cans down at the recycling center. Or those installing insulation in buildings that are already R33.

Yeah, that'll happen. I laughed out loud when I read that.