Download PDF version of this article PDF

What's on Your Hard Drive?

Every month we ask you, and you tell us, what’s on your hard drive. It’s great to see the breadth of tools represented: some proprietary, some open source; some from large players in the software market, others from smaller shops or collectives of developers. But somehow they all coexist (albeit not necessarily peacefully), fulfilling a variety of needs for developers from here to Timbuktu. It’s also interesting to witness the diversity of viewpoints on any one product. Unfortunately, we can show only a snippet of those opinions on this page, so please visit http://www.acmqueue.com to read more and chime in on what you think of these tools.

Who: Andrew Marshall

What industry: Software engineering

Where: Kingston, Nova Scotia, Canada

Flavor: Develops on Windows Embedded

Tool I love! GCC. I enjoy GCC because each of its compilers does exactly what it is told—nothing more, nothing less. If you can’t write a program in your favorite language without the use of an IDE, you are not a programmer.

Tool I hate! BlueJ. The use of an IDE is a bad thing; however, BlueJ manages to make it even worse. I can understand an IDE that wants to make it more like command-line programming, but this one misses the target.

 

Who: Terry Shikano

What industry: Software engineering

Where: Atlanta, Georgia

Flavor: Develops on Windows/Linux for Windows/Linux

Tool I love! Vi. It’s compact and quick to launch. I use Vi for almost everything, from scripting to C/C++ to Java. It never lets me down, except when I need to use Lisp (then I switch to Emacs).

Tool I hate! Eclipse. It has too many features, and some of them are unstable. Also, it is slow. I spent more time diagnosing problems with this IDE than writing actual code.

 

Who: Jim Adams

What industry: Software engineering

Where: Fredericton, New Brunswick, Canada

Flavor: Develops on Windows for Windows

Tool I love! Eclipse 4.0. Eclipse is a robust Java development environment that has all the features I need to build large applications. It has a feature similar to Visual Studio’s Intellisense that displays class and method information while typing. And it keeps my code compiled so all I need to do is run the app.

Tool I hate! NetBeans 4.0. Although functionally good, the tool is slow to load and sluggish when in use. There are just too many options and pieces to load and use. There should be a configurable load process to minimize the load time and cache usage.

 

Who: James Blackwell

What industry: Software engineering

Where: Wilkes-Barre, Pennsylvania

Flavor: Develops on Linux for Posix

Tool I love! Meld. I frequently review the code of other developers, looking for interface changes, resolving conflicts, etc. With Meld, I can easily compare the differences between two working trees, represented in a clear, intuitive way.

Tool I hate! Bugzilla. Though Bugzilla is a very powerful tool, a couple hours of interaction with a poorly designed Web-centric interface like Bugzilla often gives me a migraine. The free software community could use a multi-protocol bug tracker. Imagine telnetting to a bug-tracking system and searching for bugs with a SQL-like interface, closing bugs via e-mail, or an NNTP interface that could give threaded views of bugs sorted by various hierarchies.

acmqueue

Originally published in Queue vol. 3, no. 3
Comment on this article in the ACM Digital Library





More related articles:

Nicole Forsgren, Eirini Kalliamvakou, Abi Noda, Michaela Greiler, Brian Houck, Margaret-Anne Storey - DevEx in Action
DevEx (developer experience) is garnering increased attention at many software organizations as leaders seek to optimize software delivery amid the backdrop of fiscal tightening and transformational technologies such as AI. Intuitively, there is acceptance among technical leaders that good developer experience enables more effective software delivery and developer happiness. Yet, at many organizations, proposed initiatives and investments to improve DevEx struggle to get buy-in as business stakeholders question the value proposition of improvements.


João Varajão, António Trigo, Miguel Almeida - Low-code Development Productivity
This article aims to provide new insights on the subject by presenting the results of laboratory experiments carried out with code-based, low-code, and extreme low-code technologies to study differences in productivity. Low-code technologies have clearly shown higher levels of productivity, providing strong arguments for low-code to dominate the software development mainstream in the short/medium term. The article reports the procedure and protocols, results, limitations, and opportunities for future research.


Ivar Jacobson, Alistair Cockburn - Use Cases are Essential
While the software industry is a fast-paced and exciting world in which new tools, technologies, and techniques are constantly being developed to serve business and society, it is also forgetful. In its haste for fast-forward motion, it is subject to the whims of fashion and can forget or ignore proven solutions to some of the eternal problems that it faces. Use cases, first introduced in 1986 and popularized later, are one of those proven solutions.


Jorge A. Navas, Ashish Gehani - OCCAM-v2: Combining Static and Dynamic Analysis for Effective and Efficient Whole-program Specialization
OCCAM-v2 leverages scalable pointer analysis, value analysis, and dynamic analysis to create an effective and efficient tool for specializing LLVM bitcode. The extent of the code-size reduction achieved depends on the specific deployment configuration. Each application that is to be specialized is accompanied by a manifest that specifies concrete arguments that are known a priori, as well as a count of residual arguments that will be provided at runtime. The best case for partial evaluation occurs when the arguments are completely concretely specified. OCCAM-v2 uses a pointer analysis to devirtualize calls, allowing it to eliminate the entire body of functions that are not reachable by any direct calls.





© ACM, Inc. All Rights Reserved.