2012.03.22
How do Big US Firms Use Open Source Software?
We hear a lot about the adoption of open source software,
but when I was asked to provide hard evidence there was
little I could find.
In an
article I recently published in the
Journal of Systems and Software together with my colleague
Vaggelis Giannikas we tried to fill this gap by
examining the type of software the US Fortune 1000 companies use
in their web-facing operations.
The results were not what I was expecting.
Continue reading "How do Big US Firms Use Open Source Software?"Last modified: Thursday, March 22, 2012 7:47 pm
2012.03.08
Package Management Systems
DLL hell was a condition that often afflicted unfortunate users of old Microsoft Windows versions. Under it, the installation of one program would render others unusable due to incompatibilities between dynamically linked libraries. Suffering users would have to carefully juggle their conflicting DLLs to find a stable configuration. Similar problems distress any administrator manually installing software that depends on incompatible versions of other helper modules.
Continue reading "Package Management Systems"Last modified: Thursday, March 8, 2012 2:00 pm
2012.02.07
How to Decrypt "Secrets for Android" Files
Secrets for Android
is a nifty Android application that allows you to securely store
passwords and other sensitive data on your Android phone.
Your data are encoded with your supplied password using strong
cryptography and are therefore protected if your phone gets stolen.
Although the application offers a backup and an export facility,
I found both wanting in terms of the availability and confidentiality
associated with their use.
Continue reading "How to Decrypt "Secrets for Android" Files"Last modified: Thursday, February 9, 2012 0:19 am
2012.01.11
Refactoring on the Cheap
The refactorings that a good integrated development environment can perform are impressive. Yet, there are many reasons to master some cheap-and-cheerful alternative approaches. First, there will always be refactorings that your IDE won’t support. Also, although your IDE might offer excellent refactoring support for some programming languages, it could fall short on others. Modern projects increasingly mix and match implementation languages, and switching to a specialized IDE for each language is burdensome and inefficient. Finally, IDE-provided refactorings resemble an intellectual straightjacket. If you only know how to use the ready-made refactorings, you’ll miss out on opportunities for other code improvements.
Continue reading "Refactoring on the Cheap"Last modified: Wednesday, January 11, 2012 5:23 pm
2012.01.08
Mind Mapping
In a recent
NPR interview the journalist
described how I used a mind map to organize my work while I
served as Secretary General for Information Systems
at the Greek Ministry of Finance.
A number of people asked me for more details;
if you're interested read on.
Continue reading "Mind Mapping"Last modified: Sunday, January 8, 2012 6:42 pm
2011.12.28
Pretend Invitations
Choosing between people you want to invite to a function and people you
have to invite is sometimes difficult.
Say Alice wants to invite Tom, Dick, and Harry to a party, but she'd actually
prefer if Dick didn't show up.
Here's how Alice can send invitations by email from an email-capable
Unix system to achieve the desired result,
while covering her scheming with plausible deniability.
Continue reading "Pretend Invitations"Last modified: Wednesday, December 28, 2011 12:29 am
2011.12.17
Advice from Successful Greek IT Startups
Members of the
Hellenic Association of Mobile Application Companies
and the
Hellenic Semiconductor Industry Association,
assorted biotechnology companies, and representatives from
Greek and US-based venture capital funds gathered on Friday
December 17, 2011 in a meeting
to exchange advice, tips, and war stories on venturing abroad.
It was one of the most inspiring meetings I've attended for some time.
These are my notes from the meeting.
Continue reading "Advice from Successful Greek IT Startups"Last modified: Saturday, December 17, 2011 1:31 pm
2011.12.14
Apps are the New Users
Some facilities provided by mature multi-user operating systems appear arcane today. Administrators of computers running Mac OS X or Linux can see users logged-in from remote terminals, they can specify limits on the disk space one can use, and they can run accounting statistics to see how much CPU time or disk I/O a user has consumed over a month. These operating systems also offer facilities to group users together, to specify various protection levels for each user's files, and to prescribe which commands a user can run.
Continue reading "Apps are the New Users"Last modified: Wednesday, December 14, 2011 5:24 pm
2011.11.27
Using the HP 4470c Scanner Under Windows 7
Neither
Hewlett Packard nor
Microsoft Windows 7
offer native support for my HP 4470c scanner.
Throwing a working scanner away to buy a new one only because some
software was missing seemed like a waste,
so I looked for an alternative solution.
This is how I made it work using SANE,
an open source framework for scanners.
Continue reading "Using the HP 4470c Scanner Under Windows 7"Last modified: Sunday, November 27, 2011 6:54 pm
2011.10.30
Lessons from Space
By Diomidis Spinellis and Henry Spencer
We can lick gravity, but sometimes the paperwork is overwhelming.
— Wernher von Braun
Twilight saw the landing of Atlantis at the Kennedy Space Center on 21 July 2011, marking the end of the 30-year Space Shuttle program and leaving the Soyuz series of spacecraft as the only remaining major option for sending humans into space. With a history of 1,700 flights over an almost half-century lifetime, the Soyuz rocket and spacecraft are arguably a tremendously successful spaceflight design. Given the parallels between the complexity of human spaceflight and large software systems, what can we developers learn from the Soyuz program?
Continue reading "Lessons from Space"Last modified: Sunday, October 30, 2011 2:05 pm