Recently a friend asked me what I look for when considering a new job. When I interview for a new software engineering job, I’m usually participating in two interviews at once. The company is interviewing me, and I am interviewing the company. Both interviews are equally important to me. Sometimes I am nervous about appearing […]
Warning: This article is long and thorough. If you’re in a hurry, you can skip straight to the final product here: http://plnkr.co/edit/6KxHY8ZpE83Z2PeNWlYi?p=preview Prerequisites to this article Before reading this, get to know these AngularJS terms. You don’t need too much depth, but you need to know what they are: Directive Scope Controller Injecting services into […]
For years, web application developers have used DOM manipulation tools like jQuery to control their user interface. Astute developers have taken it to the next level with client-side templating tools like Mustache and Handlebars.js to build sophisticated user interfaces on the client side. And then AngularJS came along. And we all realized we’ve been doing […]
Have you ever wanted to temporarily suppress console output in Python? But you really want it to be temporary, even if an exception happens. Maybe you are calling into some idiot’s library who spams your console. Yeah, that’s happened to me before (maybe I was the idiot–I’m not tellin’). Here’s a handy way to suppress […]
Loans are a convenient way to acquire assets that don’t have an immediate economic benefit, but which can provide long-term liquidity, and in this case can help finance long-term growth. The Federal Reserve has provided a lot of aid to banks that are facing the difficulties that have been occurring in the real estate market. […]
Sometimes you just need to sloooooow doooooooown to test how your software behaves when your internet connection is crappy. Linux has tc to do this, but what about Mac OS X? That’s where ipfw comes in. It does a lot of stuff. I mean a lot, but we’re just going to use it to slow […]
Dangerous? Really? Well, not if you understand how it works. Note: I’m not the first to write about this subject. When writing a function in Python, it’s handy to use default argument values like this: And you think this will provide an easy way to let lazy callers pass no arguments to your function, and […]
What does it take to write high quality code? Here’s a little table that I use to judge my own code quality: Future axes to add: Ratio of the initial development cost to the long term maintenance cost Code testability: Code can be manually tested, code can be tested with automation, code can be tested […]
Treading on Python by Matt Harrison provides a basic introduction to the Python programming language for programming novices. Background of the reviewer I have been writing code professionally for 10 years. I’ve spent most of my time in C++, but I’ve written a handful of small Python scripts (less than 100 lines) and a couple […]
Nothing says Merry Christmas like Project Euler. Here’s a nifty solution to Problem 79 that uses Python and Graphviz. The problem is to identify a user’s password given a bunch of successful logins (taken from some kind of nefarious keylogger–those crafty devils). The çatch is that each login is actually a subset of the actual […]