New version (1.10) of the fileprune tool.
This version allows the specification of dates as arguments,
allowing the tool to be used with cloud-based storage services,
like the AWS snapshots.
Diomidis Spinellis, Vassilios Karakoidas,
and Panagiotis Louridas.
Comparative
language fuzz testing: Programming languages vs. fat fingers.
In PLATEAU 2012: 4th Annual International Workshop on Evaluation and
Usability of Programming Languages and Tools—Systems, Programming,
Languages and Applications: Software for Humanity (SPLASH 2012). ACM,
October 2012.
All my lecture notes received a face lift.
The most notable improvements are:
Improved navigation links: icons, layout, and associated text
Common style sheets across all notes
Links to print all the notes and the table of contents
in a book-like format
A presentation view for lectures,
with shortcuts for keyboard/remote navigation
(contributed by Vassileios Karaoidas),
large fonts,
stylish bullets,
and hidden unneeded elements.
Wed Apr 4 2012
New version (1.9) of the ckjm Java metrics program.
This version integrates BCEL 5.2,
fixes a NoSuchMethodError, and
migrates the source code repository to git and GitHub.
A version (5.4) of UMLGraph
creates clickable diagram elements in HTML content, makes the
generation of diamond shapes compatible with GraphViz 2.27, and includes a fix
to ensure that class images only appear once in the generated diagrams.
Sun Dec 12 2010
A new version of
bib2xhtml
adds an option to highlight a specified author name, improves chronological ordering, adds support for \href appearing in bibliography entries, and fixes a few bugs. In addition, in response to an increased number of invocation options, the project's home page now supports the interactive display of formatting examples.
Thu Feb 04 2010
A new version of
bib2xhtml adds a paragraph option
contributed by Wilfried Elmenreich.
Wed Sep 30 2009
Many September conferences. Uploaded the following publication pre-prints.
Diomidis Spinellis and Vaggelis Giannikas.
Open source adoption in large US companies.
In A. Poulymenakou, N. Pouloudi, and K. Pramatari, editors, MCIS 2009:
4th Mediterranean Conference on Information Systems, pages 580–587,
September 2009.
Dimitris Mitropoulos, Vassilios Karakoidas,
and Diomidis Spinellis.
Fortifying applications against XPath injection attacks.
In A. Poulymenakou, N. Pouloudi, and K. Pramatari, editors, MCIS 2009:
4th Mediterranean Conference on Information Systems, pages
1169–1179, September 2009.
Eirini Kalliamvakou, Georgios Gousios,
Diomidis Spinellis, and Nancy Pouloudi.
Measuring developer contribution from software repository data.
In A. Poulymenakou, N. Pouloudi, and K. Pramatari, editors, MCIS 2009:
4th Mediterranean Conference on Information Systems, pages 600–611,
September 2009.
Dimitris Mitropoulos and Diomidis
Spinellis.
Securing e-voting against MITM attacks.
In Vassilios Chrissikopoulos, Nikolaos Alexandris, Christos Douligeris, and
Spyros Sioutas, editors, PCI 2009: Proceedings of 13th Panhelenic
Conference on Informatics, 2009.
Vassilios Karakoidas and Diomidis Spinellis.
J%: Integrating domain specific languages with Java.
In Vassilios Chrissikopoulos, Nikolaos Alexandris, Christos Douligeris, and
Spyros Sioutas, editors, PCI 2009: Proceedings of 13th Panhelenic
Conference on Informatics, pages 109–113. IEEE Computer Society,
September 2009.
(doi:10.1109/PCI.2009.26)
Uploaded version 2.7 of CScout.
This version provides three new features. A new call graph for functions now shows a function in context with all the paths from its callers and all called functions. When saving refactored code, CScout can verify that the renamed identifiers do not clash with other existing identifiers. A new function argument refactorings page can be used to review, change, and deactivate function argument refactorings. Finally, this version optimizes file handling during the post-processing phase, makes ccmake work with ccache, and corrects a few bugs and deviations from the C standard
Georgios Gousios and Diomidis Spinellis.
A platform for software engineering research.
In Michael W. Godfrey and Jim Whitehead, editors, MSR '09: Proceedings
of the 6th Working Conference on Mining Software Repositories, pages
31–40. IEEE, May 2009.
Uploaded version 1.11-1 of
grconv, the universal Greek
character code converter.
This version adds support for the URL encoding.
Tue Mar 31 2009
Uploaded publication
Diomidis Spinellis, Georgios Gousios,
Vassilios Karakoidas, Panagiotis Louridas, Paul J. Adams, Ioannis Samoladas, and Ioannis Stamelos.
Evaluating the quality of open source software.
In SQM 2008: Second International Workshop on Software Quality and
Maintainability—12th European Conference on Software Maintenance and
Reengineering (CSMR 2008) satellite event, pages 5–28. The
Reengineering Forum, March 2009.
Electronic Notes in Theoretical Computer Science Volume 233.
(doi:10.1016/j.entcs.2009.02.058)
New version (5.2) of UMLGraph.
This is a bug fix release.
Mon Nov 17 2008
Uploaded version 2.5 of CScout.
This version introduces
a number of improvements suggested by Richard O'Keefe, as well as
a few bug fixes, documentation clarifications, and
a substantial web interface face lift.
Each file's web page now provides links for generating compile-time,
control, and data dependency graphs.
In addition, identifier queries can now provide the functions where
an identifier appears, the
file details page now provides links for listing functions defined
in the file and their call graph, and
the main page and the individual file details pages now provide options
for generating include graphs.
Finally, yacc identifiers now live in a separate namespace,
the provided definition files match closer the gcc builtins, and in
file, function, and identifier queries one can now specify to exclude
results from filenames matching a particular regular expression.
Vasilios Almaliotis, Alexandros Loizidis,
Panagiotis Katsaros, Panagiotis Louridas, and Diomidis Spinellis.
Static program analysis for Java Card applets.
In Gilles Grimaud and François-Xavier Standaert, editors, Smart Card
Research and Advanced Applications — CARDIS 2008: Proceedings of the 8th
IFIP Smart Card Research and Advanced Application Conference, pages
17–31. Springer Verlag, September 2008.
Lecture Notes in Computer Science 5189.
(doi:10.1007/978-3-540-85893-5_2)
Ioannis Samoladas, Georgios Gousios,
Diomidis Spinellis, and Ioannis Stamelos.
The SQO-OSS quality model: Measurement based open source software
evaluation.
In Ernesto Damiani and Giancarlo Succi, editors, Open Source Development,
Communities and Quality — OSS 2008: 4th International Conference on Open
Source Systems, pages 237–248, Boston, September 2008. IFIP 20th
World Computer Congress, Working Group 2.3 on Open Source Software, Springer.
(doi:10.1007/978-0-387-09684-1_19)
Uploaded version 2.4 of CScout.
This version adds support for function argument refactoring.
Furthermore, a new option controls the depth of function and macro
call graphs, which are now fully browsable in SVG-enabled browsers. In
addition, the Web front-end provides support for hand-editing of
files, source code directory browsing, and functionality to
interactively explore the tree of a function's calling and called
functions. Finally, the processing engine includes support for gcc's
include_next directive and for the preprocessor conditionals within
macro invocations extension.
Sat Jul 12 2008
Our paper
A PRoactive
Malware Identification System based on the Computer Hygiene Principles
(Information Management and Computer Security, 15(4):295-312, 2007)
was awarded by
Emerald
publishers with the
"Highly Commended Paper" distinction.
The award was given by the journal's editorial board to three papers
as part of the
"Literati Network Awards for Excellence 2008".
The paper was written as part of Vassilis Vlachos's PhD work.
Diomidis Spinellis.
A tale of four kernels.
In Wilhem Schäfer, Matthew B. Dwyer, and Volker Gruhn, editors,
ICSE '08: Proceedings of the 30th International Conference on
Software Engineering, pages 381–390, New York, May 2008. Association
for Computing Machinery.
(doi:10.1145/1368088.1368140)
Uploaded version 2.3 of CScout.
This version calculates many new file and function-related metrics to
assist in the evaluation of the code's maintainability. A couple of
gcc extensions have been added. Support for various Microsoft C
extensions now allows CScout to process more Microsoft-platform C
code, like the complete Windows Research Kernel (WRK). Finally, this
version fixes some small language-related corner cases.
Vasileios Vlachos and Diomidis Spinellis.
A PRoactive malware identification system based on the computer hygiene
principles.
Information Management and Computer Security, 15(4):295–312,
2007.
(doi:10.1108/09685220710817815)
Vasileios Vlachos, Eirini Kalliamvakou, and
Diomidis Spinellis.
Simulating bandwidth-limited worms: One graph to rule them all?.
In Theodore S. Papatheodorou, Dimitris N. Christodoulakis, and Nikitas N.
Karanikolas, editors, Current Trends in Informatics: 11th Panhellenic
Conference on Informatics, PCI 2007, volume B, pages 151–162,
Athens, May 2007. New Technologies Publications.
Dimitris Mitropoulos and Diomidis Spinellis.
Countering SQL injection attacks with a database driver.
In Theodore S. Papatheodorou, Dimitris N. Christodoulakis, and Nikitas N.
Karanikolas, editors, Current Trends in Informatics: 11th Panhellenic
Conference on Informatics, PCI 2007, volume B, pages 105–115,
Athens, May 2007. New Technologies Publications.
Georgios Gousios, Vassilios Karakoidas,
Konstantinos Stroggylos, Panagiotis Louridas, Vasileios Vlachos, and Diomidis
Spinellis.
Software quality assessment of open source software.
In Theodore S. Papatheodorou, Dimitris N. Christodoulakis, and Nikitas N.
Karanikolas, editors, Current Trends in Informatics: 11th Panhellenic
Conference on Informatics, PCI 2007, volume A, pages 303–315,
Athens, May 2007. New Technologies Publications.
Uploaded version 2.2 of CScout.
This version offers tens of new features, and
has been tested on the Linux and FreeBSD kernels.
Tue Sep 19 2006
Changed the copyright of 18,290 pages to the
Creative Commons Attribution-Share Alike 3.0 Greece License.
The remaining 639 pages for which I hold the copyright will be changed as
I update each corresponding project.
Another 520 pages have copyrights belonging to various publishers,
and will stay like that.
Diomidis Spinellis.
Global software development in the FreeBSD project.
In NASSCOM Quality Summit 2006: Setting benchmarks in global
outsourcing, Bangalore, India, September 2006. National Association of
Software and Services Companies (NASSCOM).
Thu Jul 29 2006
New version (4.4) of UMLGraph.
This version provides support for creating UML-annotated
Javadoc documentation.
This feature was contributed by Andrea Aime.
Tue Jul 25 2006
Uploaded publication
Vasileios Vlachos, Andreas Raptis, and
Diomidis Spinellis.
PROMISing steps towards computer hygiene.
In Steven Furnell, editor, International Network Conference
(INC2006), pages 229–236, July 2006.
Giorgos Gousios, Vassilios Karakoidas, and
Diomidis Spinellis.
Tuning Java's memory manager for high performance server
applications.
In Alexios Zavras, editor, Proceedings of the 5th International System
Administration and Network Engineering Conference SANE 06, pages
69–83. NLUUG, Stichting SANE, May 2006.
Diomidis Spinellis.
Global software development in the FreeBSD project.
In P. Kruchten, Y. Hsieh, E. MacGregor, D. Moitra, and W. Strigel, editors,
International Workshop on Global Software Development for the
Practitioner, pages 73–79. ACM Press, May 2006.
Diomidis Spinellis.
Code Quality: The Open Source Perspective. Addison-Wesley, Boston, MA, 2006.
got published.
More details can be found on the
book's web site.
Sun Mar 05 2006
New version (4.3) of UMLGraph.
This version provides support for views and features a new
HTML-based dot interface.
Both features were contributed by Andrea Aime.
Sun Feb 19 2006
Update the blog look and feel,
based on Sascha Welter's
design and stylesheet.
Vasileios Vlachos, Vassiliki Vouzi,
Damianos Chatziantoniou, and Diomidis Spinellis.
NGCE — network graphs for computer epidemiologists.
In Panagiotis Bozanis and Elias N. Houstis, editors, Advances in
Informatics: 10th Panhellenic Conference on Informatics, PCI 2005,
pages 672–683. Springer-Verlag, November 2005.
Lecture Notes in Computer Science 3746.
Tue Nov 15 2005
New version (4.1) of UMLGraph.
This version
provides better handling of hidden classes, and a complete
overhaul of the source code.
Thu Oct 20 2005
New version (3.4) of UMLGraph.
In this version
sequence diagrams include support for drawing comments and frames.
New version (3.2) of UMLGraph.
This version completes the Java 1.5 support
by displaying the template arguments of generic classes inside angle
brackets and the type parameters of fields and method arguments.
Thu Jul 14 2005
A new version of
bib2xhtml allows you to
create biliography listings that include each entry's BibTeX key.
Sat Mar 26 2005
New version (3.1) of UMLGraph.
Conversion of the source to Java 1.5, and support for
displaying enumerations as stereotyped primitive types.
I am co-editing an IEEE Intelligent Systems
special issue on Advanced Heuristics in Transportation and Logistics.
For more details, see the full call for papers.
Uploaded publication
Yannis Charalabidis, Vassilios Karakoidas,
Stephanos Androutsellis-Theotokis, and Diomidis Spinellis.
Enabling b2b transactions over the internet through application interconnection: The PRAXIS project.
In Paul Cunningham and Miriam Cunningham, editors, eAdoption and the
Knowledge Economy: Issues, Applications and Case Studies, chapter 7,
pages 1554–1561. IOS Press, October 2004.
Paper presented at the 2004 e-Challenges Conference, Vienna, Austria.
Uploaded four book reviews that appeared during 2003-2004
in the ACM Computing Reviews, and corrected many review citation
details.
See the book reviews section.
Added a DOI link on many references listed
in the publications page.
This provides direct and (in theory permanent)
access to the official publisher-maintained material.
Wed Aug 04 2004
New version (2.6) of UMLGraph.
URL linking configuration,
source clean-up, bug fixes, and support for an upcoming
Maven plugin.
Added the cover images of the Chinese and Japanese translations
on the web page
of my book
Code Reading: The Open Source Perspective.
Sat Jun 05 2004
New versions or distribution upgrades
of UMLGraph,
CScout,
outwit, and
bib2xhtml.
Small enhancements and bug fixes contributed by the user community.
In addition, all the above distributions now contain a zip package,
as well as the traditional gzip tar file.
Sun May 09 2004
Uploaded a new version of UMLGraph,
the declarative UML diagram drawing system.
This version adds support for drawing UML sequence diagrams.
Uploaded publication
Angeliki Tsilira, Adamantia Pateli, Erast Athanasiadis, and Diomidis Spinellis.
Targeted messages in indoor mobile environment: A software-oriented approach.
In M. H. Hamza, editor, Proceedings of the IASTED International
Conference on Software Engineering, pages 734-739. IASTED, ACTA
Press, February 2004.
Fri Feb 27 2004
Update of the outwit tool suite to version 21.
The winclip program now supports input and output of
Unicode UTF-8 text and a byte order mark.
Uploaded publication
Konstantinos Chorianopoulos and Diomidis Spinellis.
Usability design for the home media station.
In Constantine Stephanidis, editor, Proceedings of the 10th International
Conference on Human Computer Interaction --- HCI International 2003,
pages 439-443. Lawrence Erlbaum Associates, Inc, June 2003.
Thu Jan 15 2004
Uploaded a new version of the
bib2html tool.
bib2html
is a program that converts BibTeX files into HTML.
This is an update of a program written by David Hull in 1996 and
maintained by him until 1998.
I have been a happy user of the program since 1995, using the program
to keep my
publication list up to date.
After 1998 no other changes were made to the program, and I failed
to locate an active program home page.
Since there were a number of changes I needed to bring the program
up to date with evolving web standards,
I decided to adopt bib2html for
maintenance, evolution, and further distribution.
This first new public release made in 2004, features support for
XHTML 1.0.
Fri Jan 9 2004
Uploaded publications
George Roussos, Panos Kourouthanasis,
Diomidis Spinellis, Eugene Gryazin, Mike Pryzbliski, George Kalpogiannis, and
George Giaglis.
Systems architecture for pervasive retail.
In ACM Symposium on Applied Computing, pages 631-636, New York,
March 2003. ACM, ACM Press.
Konstantinos Chorianopoulos, George
Lekakos, and Diomidis Spinellis.
The virtual channel model for personalized television.
In Judith Masthoff, Richard Griffiths, and Lyn Pemberton, editors,
Proceedings of the European Conference on Interactive Television: from
Viewers to Actors?, pages 59-67, 2003.
Fri Dec 22 2003
Update of the outwit tool suite to version 20.
The winreg program now supports names with embedded backslashes.
Problem reported by Antti Ala-heikkilä.
Sun Dec 7 2003
Update of the outwit tool suite to version 19.
Winreg now supports the QWORD data type and changes by Pascal Hirsch
allow odbc to connect to database without requiring a predefined
data source.
Fri Nov 21 2003
Uploaded publication
Diomidis Spinellis.
Reading, writing, and code.
ACM Queue, 1(7):84-89, October 2003.
The puttyclip patch to
Simon Tatham's
putty
Win32 Telnet and SSH client
allows you to easily copy remote files and the output of remote Unix programs
to your local Windows clipboard.
Wed Oct 14 2003
The prune tool got renamed into
fileprune.
As noticed by Oliver Eikemeier, the original name was already taken by
a tool part of AT&T's
GraphViz
system.
Fileprune
will delete files from the specified set targetting a given distribution of the files within time as well as size, number, and age constraints. Its
main purpose is to keep a set of daily-created backup files in managable size, while still providing reasonable access to older versions. Specifying a
size, file number, or age constraint will simply remove files starting from the oldest, until the constraint is met. The distribution specification
(exponential, Gaussian (normal), or Fibonacci) provides finer control of the files to delete, allowing the retention of recent copies and the increasingly
agressive pruning of the older files.
Update of the outwit tool suite to version 15.
This fixes an error in the handling of non-Unicode text in winclip.
Fri Sep 5 2003
Uploaded a book review that recently appeared in ACM Computing Reviews.
See the book reviews section.
Wed Aug 27 2003
Uploaded version 1.16 of CScout.
This version can process the entire current FreeBSD kernel of
five different architectures ("how to do it" documentation included).
The netpipe tool got renamed into
socketpipe.
The original name was already taken by NASA's
NetPIPE.
Socketpipe
connects a remote command to local input and output processes without
the data copy and context switching overhead of the customary
rsh or ssh pipelines.
Uploaded version 1.15 of CScout.
This version uses a fraction of the memory of older versions, and
can process the entire FreeBSD kernel (example included).
Uploaded the source code of the
netpipe tool.
Netpipe
connects a remote command to local input and output processes without
the data copy and context switching overhead of the customary
rsh or ssh pipelines.
Sun Jun 22 2003
Uploaded version 1.10 of CScout.
CScout is a source code analyzer and refactoring browser for
collections of C programs.
It can process workspaces of multiple projects (we define a project
as a collection of C source files that are linked together)
mapping the complexity introduced
by the C preprocessor back into the original C source code files.
CScout takes advantage of modern hardware advances (fast processors
and large memory capacities) to analyze C source code beyond the level
of detail and accuracy provided by current compilers and linkers.
Uploaded publication
Victoria Skoularidou and Diomidis Spinellis.
Security architectures for network clients.
Information Management and Computer Security, 11(2):84-91,
2003.
Tue May 13 2003
Uploaded the Web page
for my book
Code Reading: The Open Source Perspective.
Effective Software Development Series. Addison-Wesley, Boston, MA, 2003.
Thu May 5 2003
Uploaded a book review that recently appeared in ACM Computing Reviews.
See the book reviews section.
Thu Apr 26 2003
Uploaded version 1.21 of the UMLGraph system.
This version supports SVG hyperlinks to Javadoc pages.
Sun Apr 20 2003
Research results reported in the March 2003 issue of
IEEE Spectrum, p. 63.
Killer Computer Bugs
Will computer viruses mutate faster than we can find ways to detect
them? According to recent research, it seems that way. A scientist at
Athens University [of Economics and Business] (Greece) has determined
that guaranteed detection of a mutating virus on a computer is a
computationally expensive task that falls into a category of problems
termed non-polynomial (NP-)complete. The time it takes to solve such
problems increases exponentially as the complexity of the problem grows.
Since detecting a virus typically involves comparing the contents of a
possibly infected computer against virus code, the calculation will take
drastically longer with each additional bit of data that must be sifted
through. The Athens researcher offers both good and bad news about this
situation. The bad news is that the virus-detection problem will
increase in difficulty faster than computer speeds improve. The good
news is that if you are willing to put up with some false-positive
results, virus-hunting software should be able to keep up.
D. Spinellis, K. Moulinos, J. Iliadis,
D. Gritzalis, S. Gritzalis, and S. Katsikas.
Deploying a secure cyberbazaar by adding trust on commercial
transactions.
eJETA.org, 1(2), November 2002.
Available online
http://minbar.cs.dartmouth.edu/greecom/ejeta/second-issue.php?download=ejeta-2002.05.10.15.43.34.pdf.
Uploaded the source code for the prune
tool-distributed under an open source BSD-style license.
Prune will delete files from the specified set targetting a given distribution of the files within time as well as size, number, and age constraints. Its
main purpose is to keep a set of daily-created backup files in managable size, while still providing reasonable access to older versions. Specifying a
size, file number, or age constraint will simply remove files starting from the oldest, until the constraint is met. The distribution specification
(exponential, Gaussian (normal), or Fibonacci) provides finer control of the files to delete, allowing the retention of recent copies and the increasingly
agressive pruning of the older files.
Uploaded publication
Konstantinos Chorianopoulos and Diomidis Spinellis.
A metaphor for personalized television programming.
In Noelle Carbonelle and Constantine Stephanides, editors, Proceedings of
the 7th ERCIM Workshop on User Interfaces for All, pages 139-146,
Paris (Chantilly), France, October 2002. Springer-Verlag.
Wed Oct 30 2002
Uploaded publication
Ioannis Mathes, Adamantia Pateli, Argiris Tsamakos,
and Diomidis Spinellis.
Context aware services in an exhibition environment- the mEXPRESS
approach.
In B. Stanford-Smith et al., editor, Challenges and Achievements in
E-business and E-work: Proceedings of the E-business and E-work
Conference, pages 685-692, Prague, The Czech Republic, October 2002.
IOS Press.
Thu Aug 26 2002
Uploaded the UMLGraph system.
UMLGraph allows the declarative specification and drawing of a number of UML diagrams.
Tue Jul 30 2002
Update of the outwit tool suite to version 13.
This version adds the readlog command to read the Windows
event log; winreg now handles additional registry entry types.
Mon Jul 22 2002
Uploaded publication
Victoria Skoularidou and Diomidis Spinellis.
Securing the network client.
In Proceedings of the the Third International Network Conference INC
'02, pages 386-396, Plymouth, UK, July 2002.
Diomidis Spinellis.
The information furnace: User-friendly home control.
In Proceedings of the 3rd International System Administration and
Networking Conference SANE 2002, pages 145-174, Maastricht, The
Netherlands, May 2002.
Uploaded open-source example software code for setting up an
information Furnace,
a basement-installed PC-type device that
integrates existing consumer home-control, infotainment, security,
and communication technologies to transparently provide user-friendly
access and value-added services.
Update of the outwit tool suite to version 12.
Winclip now supports Unicode text.
Uploaded version 1.6-1 of
grconv, the universal Greek
character code converter.
Mostly bug fixes (compiles under FreeBSD, correct handling of Unicode
under Windows).
Documented how to import Greek into Microsoft Office applications using
the Windows clipboard.
Uploaded new version of the
MP3 mixer
to the public software area.
Fixes a "File not found" problem appearing when paths with embedded
whitespace were used.
Uploaded version 1.5-1 of
grconv, the universal Greek
character code converter.
The major new addition is support for the TLG Beta encoding.
Tue Nov 11 2000
Uploaded publication
Konstantinos Raptis, Diomidis Spinellis, and Sokratis Katsikas.
Java as Distributed Object Glue.
In Proceedings World Computer Congress 2000,
Beijing, China, August 2000.
International Federation for Information Processing.
Uploaded version 1.2-1 of
grconv a universal Greek
character code converter.
Grconv converts between a large number of character sets, transcription, and transliteration methods that are used to represent Greek text. In addition, it
supports a number of encodings used to represent those character sets in different environments.
Tue Feb 08 2000
First public release of the Windows
Outwit tool suite.
Outwit provides console-based access to the Windows clipboard,
registry, databases, document properties, and links.
Paper will be presented at the
Usenix 2000
Technical Conference.