Open Access. Powered by Scholars. Published by Universities.®

Physical Sciences and Mathematics Commons

Open Access. Powered by Scholars. Published by Universities.®

Computer Sciences

Selected Works

Computing in Science and Engineering

Articles 1 - 27 of 27

Full-Text Articles in Physical Sciences and Mathematics

Essential Tools: Version Control Systems, Konrad Hinsen, Konstantin Läufer, George K. Thiruvathukal Jan 2012

Essential Tools: Version Control Systems, Konrad Hinsen, Konstantin Läufer, George K. Thiruvathukal

Konstantin Läufer

Did you ever wish you'd made a backup copy of a file before changing it? Or before applying a collaborator's modifications? Version control systems make this easier, and do a lot more.


Unit Testing Considered Useful, George K. Thiruvathukal, Konstantin Läufer, Benjamin Gonzalez Jan 2012

Unit Testing Considered Useful, George K. Thiruvathukal, Konstantin Läufer, Benjamin Gonzalez

Konstantin Läufer

Testing is an important part of application development. Hardware engineers, in particular, have a long established history of testing for the obvious reason that it's awfully hard to rebuild a microprocessor every time a bug pops up in the design stage--not to mention the enormous headaches such bugs generate on the software side.


Virtualization For Computational Scientists, George K. Thiruvathukal, Konrad Hinsen, Joseph P. Kaylor, Konstantin Läufer Jan 2012

Virtualization For Computational Scientists, George K. Thiruvathukal, Konrad Hinsen, Joseph P. Kaylor, Konstantin Läufer

Konstantin Läufer

Virtualization lets you carve your computer into slices, allowing for great experimentation with different operating systems, tools, and techniques.


Putting A Slug To Work, Konstantin Läufer, George K. Thiruvathukal, Ryohei Nishimura, Carlos Ramirez Martinez-Eiroa Jan 2012

Putting A Slug To Work, Konstantin Läufer, George K. Thiruvathukal, Ryohei Nishimura, Carlos Ramirez Martinez-Eiroa

Konstantin Läufer

In this article, the authors explore various uses of inexpensive embedded Linux devices such as the Linksys NSLU2 ("slug"). Embedded computing is a topic of growing interest. Although novel architectures such as cell processors, graphics processors (GPUs), and FPGAs are growing in popularity, conventional microproessor designs such as Intel's Xscale (ARM) and Atom pack a punch in a small footprint, not to mention being widely supported by commodity operating system and development tools. We're convinced that this entire space is a tool worth keeping in the scientific programmer's and software developer's toolchests.


Scientific Programming: The Promises Of Typed, Pure, And Lazy Functional Programming: Part Ii, Konstantin Läufer, George K. Thiruvathukal Jan 2012

Scientific Programming: The Promises Of Typed, Pure, And Lazy Functional Programming: Part Ii, Konstantin Läufer, George K. Thiruvathukal

Konstantin Läufer

This second installment picks up where Konrad Hinsen's article "The Promises of Functional Programming" from the July/August 2009 issue left off, covering static type inference and lazy evaluation in functional programming languages.


Plone And Content Management, George K. Thiruvathukal, Konstantin Läufer Jan 2012

Plone And Content Management, George K. Thiruvathukal, Konstantin Läufer

Konstantin Läufer

In this column, the authors look at Plone, which they feel is one of the best content management systems available today. Even better, it?s distributed under a free open-source license: the cost of getting started is only limited to the time you have available to set up the software on a server. Plone is written in Python and uses the Zope application server infrastructure; it runs on most modern operating systems. The authors have even set it up at Loyola University Chicago in the Department of Computer Science. Besides being two faculty members who rely on Plone to host all …


Guest Editor's Introduction: Cluster Computing, George K. Thiruvathukal Nov 2011

Guest Editor's Introduction: Cluster Computing, George K. Thiruvathukal

George K. Thiruvathukal

What is cluster computing? In a nutshell, it involves the use of a network of computing resources to provide a comparatively economical package with capabilities once reserved for supercomputers. In this issue, we look at certain applications of cluster computing to problem solving. As the Beowulf project and clustering revolution celebrate more than 10 years in existence, it's interesting to see what remains the same and what has changed. Let's look at a few aspects of the clustering revolution in more detail.


Java At Middle Age: Enabling Java For Computational Science, George K. Thiruvathukal Nov 2011

Java At Middle Age: Enabling Java For Computational Science, George K. Thiruvathukal

George K. Thiruvathukal

Not long after the Mosaic Web browser appeared and Netscape communications formed, Sun Microsystems launched Java in a way that will be forever known as a marketing success story. All across the US, there were many Java Day events. I still have my t-shirts as proof of having been there.


Gentoo Linux: The Next Generation Of Linux, George K. Thiruvathukal Nov 2011

Gentoo Linux: The Next Generation Of Linux, George K. Thiruvathukal

George K. Thiruvathukal

One of the reasons scientific programmers love Linux is its less-is-more philosophy. We can configure it to be anything from a desktop replacement with USB port support to a blade in a large SMP compute engine to a powerful Web server. Although Linux's market penetration in these various sectors remains to be seen, plenty of people are pumping resources into the Linux world. In this article, I?ll explain why Gentoo Linux (www.gentoolinux.org) is a good choice for scientists, and how its structure gives us the flexibility and ease of management we need.


Unit Testing Considered Useful, George K. Thiruvathukal, Konstantin Läufer, Benjamin Gonzalez Nov 2011

Unit Testing Considered Useful, George K. Thiruvathukal, Konstantin Läufer, Benjamin Gonzalez

George K. Thiruvathukal

Testing is an important part of application development. Hardware engineers, in particular, have a long established history of testing for the obvious reason that it's awfully hard to rebuild a microprocessor every time a bug pops up in the design stage--not to mention the enormous headaches such bugs generate on the software side.


Project Hosting: Expanding The Scientific Programmer's Toolbox, George K. Thiruvathukal Nov 2011

Project Hosting: Expanding The Scientific Programmer's Toolbox, George K. Thiruvathukal

George K. Thiruvathukal

Emerging technologies such as free and open source project hosting will hopefully broaden interest in scientific programming in a business context.


Home Networking, George K. Thiruvathukal Nov 2011

Home Networking, George K. Thiruvathukal

George K. Thiruvathukal

My coeditors (Paul Dubois and Konstantin Läufer) and I are among a growing number of individuals who install and maintain a home computer network. When Paul and I first discussed the idea of writing an article about the subject several months ago, my first thought was that you--our cherished readers-might consider this whole notion so trivial as to not be worthy of a column that focuses mostly on scientific programming and software development topics. But based on the realization that we three computer scientists devote a significant part of our time to network and system administration, it almost goes without …


Plone And Content Management, George K. Thiruvathukal, Konstantin Läufer Nov 2011

Plone And Content Management, George K. Thiruvathukal, Konstantin Läufer

George K. Thiruvathukal

In this column, the authors look at Plone, which they feel is one of the best content management systems available today. Even better, it?s distributed under a free open-source license: the cost of getting started is only limited to the time you have available to set up the software on a server. Plone is written in Python and uses the Zope application server infrastructure; it runs on most modern operating systems. The authors have even set it up at Loyola University Chicago in the Department of Computer Science. Besides being two faculty members who rely on Plone to host all …


Essential Tools: Version Control Systems, Konrad Hinsen, Konstantin Läufer, George K. Thiruvathukal Nov 2011

Essential Tools: Version Control Systems, Konrad Hinsen, Konstantin Läufer, George K. Thiruvathukal

George K. Thiruvathukal

Did you ever wish you'd made a backup copy of a file before changing it? Or before applying a collaborator's modifications? Version control systems make this easier, and do a lot more.


Your Local Cloud-Enabled Library, George K. Thiruvathukal Nov 2011

Your Local Cloud-Enabled Library, George K. Thiruvathukal

George K. Thiruvathukal

Libraries are an important onramp for technology. They're known for making books accessible and have been pioneers in database access, but many branches seem to understand that they have a vital cultural role to play, especially when it comes to technology access. Most people in American society presume such access is ubiquitous, even though a substantial percentage of the world population lacks access.


An Exceptionally Useful Exploration, George K. Thiruvathukal Nov 2011

An Exceptionally Useful Exploration, George K. Thiruvathukal

George K. Thiruvathukal

A book review for Computing in Science and Engineering by D. Easley and J. Kleinberg, Networks, Crowds, and Markets: Reasoning about a Highly-Connected World, Cambridge Univ. Press, 2010, ISBN: 978-0-521-1953-1, 736 pp.


Introducing Computing Now, George K. Thiruvathukal Nov 2011

Introducing Computing Now, George K. Thiruvathukal

George K. Thiruvathukal

One of Computing Now's editorial board members talks about this IEEE Computer Society initiative and all that it has to offer members and nonmembers alike.


Xml In Computational Science, George K. Thiruvathukal Nov 2011

Xml In Computational Science, George K. Thiruvathukal

George K. Thiruvathukal

In this first article in a series about XML in computational science, I present some background and lightweight examples of XML usage, describe some XML component frameworksalong with their purpose and applicability to computational science, and discuss some technical obstacles to overcome for the language to be taken seriously in computational science.


Virtualization For Computational Scientists, George K. Thiruvathukal, Konrad Hinsen, Joseph P. Kaylor, Konstantin Läufer Nov 2011

Virtualization For Computational Scientists, George K. Thiruvathukal, Konrad Hinsen, Joseph P. Kaylor, Konstantin Läufer

George K. Thiruvathukal

Virtualization lets you carve your computer into slices, allowing for great experimentation with different operating systems, tools, and techniques.


Computational Thinking...And Doing, George K. Thiruvathukal Nov 2011

Computational Thinking...And Doing, George K. Thiruvathukal

George K. Thiruvathukal

Computing in Science and Engineering, From the Editors


At Issue, Bill Feireisen, George K. Thiruvathukal Nov 2011

At Issue, Bill Feireisen, George K. Thiruvathukal

George K. Thiruvathukal

In this installment of At Issue, two of CiSE's editorial board members describe the magazine's current and future Web presence. We start with Bill Feiereisen's discussion of science on the Web and what it could mean for CiSE ("Are We There Yet?") and end with George Thiruvathukal's discussion of the challenges therein ("If We Build It, Will They Come?"). CiSE's official homepage is www.computer.org/cise; we gladly welcome comments with suggestions or feedback. You can contact lead editor (Jenny Stout; jstout@computer.org) or write to either Bill or George (their email addresses appear at the end of their respective essays).


Moving Academic Department Functions To Social Networks And Clouds: Initial Experiences, George K. Thiruvathukal, Konstantin Läufer, David Dennis Nov 2011

Moving Academic Department Functions To Social Networks And Clouds: Initial Experiences, George K. Thiruvathukal, Konstantin Läufer, David Dennis

George K. Thiruvathukal

The ability to move locally hosted services to cloud-based technologies is a key element in the scientific programming toolbox.


A Virtual Computing Laboratory, Joseph P. Kaylor, George K. Thiruvathukal Nov 2011

A Virtual Computing Laboratory, Joseph P. Kaylor, George K. Thiruvathukal

George K. Thiruvathukal

Many institutions choose to do periodic imaging of computers, which is both painstaking and limiting in terms of keeping software up to date. The authors describe an approach that builds on existing virtualization technologies.


Beyond Cise And Back To The Future, George K. Thiruvathukal Nov 2011

Beyond Cise And Back To The Future, George K. Thiruvathukal

George K. Thiruvathukal

Organizing a special issue on novel architectures for Computing Now offered lessons in what online readers want, as well as a glimpse into what's possible for CiSE.


Putting A Slug To Work, Konstantin Läufer, George K. Thiruvathukal, Ryohei Nishimura, Carlos Ramirez Martinez-Eiroa Nov 2011

Putting A Slug To Work, Konstantin Läufer, George K. Thiruvathukal, Ryohei Nishimura, Carlos Ramirez Martinez-Eiroa

George K. Thiruvathukal

In this article, the authors explore various uses of inexpensive embedded Linux devices such as the Linksys NSLU2 ("slug"). Embedded computing is a topic of growing interest. Although novel architectures such as cell processors, graphics processors (GPUs), and FPGAs are growing in popularity, conventional microproessor designs such as Intel's Xscale (ARM) and Atom pack a punch in a small footprint, not to mention being widely supported by commodity operating system and development tools. We're convinced that this entire space is a tool worth keeping in the scientific programmer's and software developer's toolchests.


Scientific Programming: The Promises Of Typed, Pure, And Lazy Functional Programming: Part Ii, Konstantin Läufer, George K. Thiruvathukal Nov 2011

Scientific Programming: The Promises Of Typed, Pure, And Lazy Functional Programming: Part Ii, Konstantin Läufer, George K. Thiruvathukal

George K. Thiruvathukal

This second installment picks up where Konrad Hinsen's article "The Promises of Functional Programming" from the July/August 2009 issue left off, covering static type inference and lazy evaluation in functional programming languages.


Moving Academic Department Functions To Social Networks And Clouds: Initial Experiences, George K. Thiruvathukal, Konstantin Läufer, David Dennis Aug 2011

Moving Academic Department Functions To Social Networks And Clouds: Initial Experiences, George K. Thiruvathukal, Konstantin Läufer, David Dennis

Konstantin Läufer

The ability to move locally hosted services to cloud-based technologies is a key element in the scientific programming toolbox.