Posts By: David Veksler

Monitoring OS X battery usage

Posted by & filed under development.

Speaking of power usage, there are two nice apps to help monitor battery usage in OS X. CoconutBattery is mostly useful for checking the health of the battery.   MiniBatteryLogger is a more advanced tool that monitors power consumption and levels over time. You can use it to see how particular configurations are consuming power. […]

Note on iOS (iPhone/iPad) background app energy usage

Posted by & filed under tips.

There is some confusion about the impact of background apps on iOS on battery life. Some prominent sources advise “quitting” all background apps to maximize batter life while others say that background apps are suspended and use no battery. Actually, both statements are true. The confusing part is that iOS does not visually indicate suspended […]

Notes from my talk on Information Security Fundamentals

Posted by & filed under development.

I recently gave a presentation/tutorial on information security for the Shanghai Rationalist group. Here are the PowerPoint slides with links (1MB). Contents: Part 1: Secure Web Browsing Part 2: Secure Networks Part 3: Secure Email and IM Part 4: Securing Operating Systems & mobile devices Part 5: Secure Organizations Conclusion: Limitations of Security Measures

How often do you read code?

Posted by & filed under development.

It is very possible and probably common to go through a major team development effort without spending very much time reading other people’s code. It’s possible to spend an entire career like that. If over 90% of the code you read is your own, how will you learn to be a better programmer?  No matter […]

A few useful commands for automating VS builds via batch file

Posted by & filed under code.

(Batch files are not meant to be a substitute for CI) Getting latest from TFS: "C:Program Files (x86)Microsoft Visual Studio 10.0Common7IDEtf.exe" get (use /preview to preview) Getting latest from Subversion: "C:Program Files (x86)VisualSVN Serverbinsvn.exe" update "F:webBeta" Building a Visual Studio solution via MSBuild: C:WindowsMicrosoft.NETFramework64v4.0.30319MSBuild.exe D:MisesMisesWeb.sln /p:configuration="Debug" Checking whether the build succeded: if %errorlevel% neq 0 […]

Why fix bugs with unit tests?

Posted by & filed under development.

I know this is nothing new, but I will share my perspective anyway: How I fix bugs with unit tests: Write a unit test that reproduces the bug so the test fails Fix the bug so the unit test passes Send a link with both to the bug submitter Why I like it: Saves time […]

Project highlight: Multimedia CMS

Posted by & filed under development.

In February, I did a high-level review of the CMS admin UI.  Today I want to highlight both the public and private parts a part of it: the multimedia CMS. The Media Management System is part of the open source project.  It was started around 2004, and evolved slowly from there, with […]

Tips for adding optional SSL support

Posted by & filed under development.

I am excited by the growing popularity of the HTTPS Everywhere plugin. I became aware of it recently when users wrote me to complain that some part of did not work over SSL. It turns out that our store software redirects visitors to the official hostname, so going to would redirect to, […]

The HD revolution is coming to the web – update your creative process today

Posted by & filed under News.

You’ve probably heard about the “retina” displays on the iPhone 4/4S and the new iPad. These devices have double the display density of most other devices. The high-DPI displays of these devices are unique, but they won’t be for long. Most analysts are predicting that within a few months, Apple will introduce the same “retina” displays […]

Success factors for quality software development teams

Posted by & filed under development.

Some notes from a short presentation I gave on building quality software development teams: Effective teams start with good people. A business is not a charity and cannot wait for people to grow into the role required of them. Intelligence and inherent motivation cannot be taught. These and many other aspects must be screened for. […]