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
2011.09.11
Faking it
This column is about a tool we no longer have: the continuous rise of the CPU clock frequency. We were enjoying this trend for decades, but in the past few years, progress stalled. CPUs are no longer getting faster because their makers can’t handle the heat of faster-switching transistors. Furthermore, increasing the CPU’s sophistication to execute our instructions more cleverly has hit the law of diminishing returns. Consequently, CPU manufacturers now package the constantly increasing number of transistors they can fit onto a chip into multiple cores—processing elements—and then ask us developers to put the cores to good use.
Continue reading "Faking it"Last modified: Sunday, September 18, 2011 5:43 pm
2011.07.31
Impact Factor of Computer Science Journals 2010
The Thomson Reuters Web of Knowledge
has published the 2010
Journal Citation Reports.
Following
similar studies I performed in
2007,
2008,
2009,
and
2010,
here is my analysis of the current status and trends for the
impact factor
of computer science journals.
Continue reading "Impact Factor of Computer Science Journals 2010"Last modified: Sunday, July 31, 2011 7:15 pm
2011.07.23
How I Dealt with Student Plagiarism
Panos Ipeirotis,
a colleague at the
NYU Stern School of Business,
received considerable media attention when,
in a blog post he subsequently removed,
he discussed how his aggressive use of plagiarism detection software
on student assignments poisoned the classroom atmosphere and
tanked his teaching evaluations.
As detailed in
a story posted on the Chronicle of Higher Education blog,
Mr. Ipeirotis proposes instead that professors should design assignments that
cannot be plagiarized.
Along these lines here are two methods I've used in the past.
Continue reading "How I Dealt with Student Plagiarism"Last modified: Saturday, July 23, 2011 5:35 pm