Javadoc Processing a File It Doesn’t Need To

I’m running the command line Javadoc tool. In the current directory, I have two files, A.java (which is syntactically correct), and a Broken.java (which has a syntax error in it). A.java doesn’t refer to Broken.java.

File A.java:
[cc lang=”java”]import javax.swing.JApplet;

public class A extends JApplet {
}[/cc]

File Broken.java:
[cc lang=”java”]class class Broken[/cc]

When I try to Javadoc just A.java using the command line

javadoc -d doc A.java

I get this output with an error:

$ javadoc -d doc A.java
Loading source file A.java...
Constructing Javadoc information...
Standard Doclet version 1.6.0_21
Building tree for all the packages and classes...
Generating doc\A.html...
Generating doc\package-frame.html...
Generating doc\package-summary.html...
Generating doc\package-tree.html...
Generating doc\constant-values.html...
Generating doc\serialized-form.html...
.\Broken.java:1: expected
class class Broken
^
.\Broken.java:1: reached end of file while parsing
class class Broken
^
Building index for all the packages and classes...
Generating doc\overview-tree.html...
Generating doc\index-all.html...
Generating doc\deprecated-list.html...
Building index for all classes...
Generating doc\allclasses-frame.html...
Generating doc\allclasses-noframe.html...
Generating doc\index.html...
Generating doc\help-doc.html...
Generating doc\stylesheet.css...
2 errors

If I don’t have an “extends” clause for the class A, then Javadoc doesn’t try to process the Broken.java file.

Can somebody please tell me why Javadoc is looking at Broken.java, and how I can prevent it from doing that? How do I tell Javadoc to just process the file I am specifying?

I’m using a Mac with OS X 10.4, Java 5, but this also occurs on Windows with Java 6 Update 21.

I was told to just fix the syntax error, but as IDE developer, that’s obviously not the solution for me. I can’t tell my users to “just fix the syntax error”.

Share
Posted in DrJava | 1 Comment

Print This Post Print This Post  

Problems Loading Pictures with DrJava and the Media Computation Library

This morning, we got a support request for DrJava that mentioned path problems with the Media Computation library from Georgia Tech.

While some of the problems mentioned could not be reproduced or were simply due to not understanding Java syntax, there was one issue that might affect many users of the Media Computation library: Pictures (and problably other resources) aren’t found even though they should be. They fail to load:

String picFile = FileChooser.pickAFile();
> System.out.println(picFile)
/Users/shoshanaholtzblatt/Documents/CMU/Java/intro-prog-java/mediasources/caterpillar.jpg
> Picture.setMediaPath("/Users/shoshanaholtzblatt/Documents/CMU/Java/intro-prog-java/mediasources/");
The media directory is now /Users/shoshanaholtzblatt/Documents/CMU/Java/intro-prog-java/mediasources/
> Picture pictureObj = new Picture("caterpillar.jpg");
Couldn't load the file caterpillar.jpg

I have experimented a bit with the Media Computation library and found
that the first problem has to do with the working directory of the
Interactions Pane. Please make sure that it is the same as the directory
you pass to Picture.setMediaPath(). You can change the Interactions Pane’s
working directory by going to Edit -> Preferences, selecting the
“Interactions Pane” category and entering a path for “Interactions Working
Directory”.

Before I did that, I had the same problem as your student. Once I set the
working directory, I was able to load the picture:

Welcome to DrJava. Working directory is /home/mgricken/Desktop/mediaComp/mediasources
> String picFile = FileChooser.pickAFile();
> picFile
"/home/mgricken/Desktop/mediaComp/mediasources/caterpillar.jpg"
> Picture.setMediaPath("/home/mgricken/Desktop/mediaComp/mediasources")
The media directory is now /home/mgricken/Desktop/mediaComp/mediasources
> Picture pictureObj = new Picture("caterpillar.jpg");
>

Please note that we do not develop the Media Computation library and
therefore may not be in the best position to help you. You may want to
contact the authors at Georgia Tech using the resources on their website. But if there is something we can change in DrJava to make the Media Computation library easier to use, please let us know.

Share
Posted in DrJava | Leave a comment

Print This Post Print This Post  

Menus for Detached Frames on the Mac

I finally implemented something this weekend that had annoyed me for a long time, ever since in July 2008 I introduced the feature to detach DrJava’s Tabbed Panes and the Debugger and put them into separate windows.

These detached frames can have their own menu bar, but we didn’t have a menu bar set. That means that when you select those windows on the Mac, DrJava’s menu bar goes blank. That’s really annoying, because you first have to click on the main frame before you can use the menu. If you’re using the debugger, for example, you cannot just click on the “Debug” menu and select “Clear All Breakpoints”.

Note how in the first picture, when the detached Debugger window has the focus, there is no DrJava menu bar. The second picture shows the DrJava menu bar, which is only there when the main frame has the focus.

DrJava on Mac, no menu bar

DrJava on Mac: No menu bar when debugger has focus.

DrJava on Mac: menu bar

DrJava on Mac: Menu bar when main frame has focus.

I had noticed this issue before, and I had even experimented with adding the main frame’s menu bar to the detached frames, but that failed, and I never filed a feature request for this until this Friday.

It’s surprisingly difficult to add the same menu bar to multiple frames. Each component can only have one parent, and that means there have to be separate JMenuBar instances, separate JMenu instances, all the way down to separate JMenuItem instances. The only thing that can be shared are the actions the menu items invoke.

Instead of trying to use the same instance or cloning or copying the menu bar, I now create two completely separate structures that only share the actions. Then I have to make sure that they are kept in sync, but there aren’t many things that can change. The most obvious one are the recent files and projects.

I just noticed that menu items with check boxes aren’t synchronized across frames, so I still need to fix that tomorrow. But when I’m done with that, DrJava will be much more pleasant to use on the Mac. Check out these two new screenshots: Menu bars, as it should be, even when the Debugger or the Tabbed Panes have focus!

DrJava on Mac, menu bar with debugger

DrJava on Mac: Menu bar also when the debugger has focus.

DrJava on Mac, menu bar with tabbed panes

DrJava on Mac: Menu bar also when the tabbed panes have focus.

Does anyone except for me actually detach the tabbed panes and the debugger? I can’t work with them attached anymore…

Update

The bugs I discovered late last night have now been fixed.

Share
Posted in DrJava | Leave a comment

Print This Post Print This Post  

Three Branches and a Trunk

We’re working on three branches of DrJava and on the trunk right now. I don’t think we’ve seen this much parallel development in a while.

In the trunk, for the last three days I’ve been working on a strange bug that Dung found on the Mac:

The menu for the Project does not seem to work right: sometime it just disables itself and does allow the user to select anything, and the run project main class menu item does not seem to work.

One of the ways this was reproducible was:
1. Have project open (with a main class set).
2. Project Properties.
3. Cancel
4. BUG: Project menu items now all disabled.
5. Can be reset by pressing Compile Project button.

This only seems to happen on Mac OS X 10.6, definitely not on my 10.4, and not on Windows or Linux. I finally discovered late this afternoon that a call to JMenuBar.setEnabled seems to be the culprit. This post on the Apple mailing list describes the same symptoms and seems to suggest that the calls maybe appear outside the event thread, and that causes the problems. I have to wait until we can test this on Dung’s OS X 10.6.

On the way, I have fixed a number of smaller bugs that had to do with the project main class and project build directory. Before I realized that JMenuBar.setEnabled seems to be the problem, I also started to rewrite the way we enable menu items, which can get relatively complex: “Clean Build Directory”, for example, may only be enabled if a project is open, a build directory is set, and JUnit isn’t running (which isn’t really an accurate description; it should be any task that ties up that directory for a while: compiling, JUnit, etc.).

I have set up a listener framework for these events. The code greatly simplifies our code, but it is also a fairly major change without external benefits, now that I have diagnosed the problem Dung was having. I don’t want to commit the changes to the trunk until after our next stable release; therefore, the code went into the drjava-guiAvailListener branch.

The folks from the Habanero research group have also begun integrating the Habanero Java compiler into DrJava. That’s in the drjava-hj branch, because we definitely don’t want this in the trunk before the next stable. I haven’t really kept up with how well this has been going. The last thing I heard was that they could compile, but they had problems running programs.

Because of these problems, and because it should really be easier to integrate research compilers into DrJava, I have begun to refactor the entire compiler interface. The idea is that I don’t want to have to modify the main DrJava code to add more search paths for JDKs and compilers anymore. It should really just work by using the custom bundle feature on a jar containing a JDK descriptor and compiler adapter.

I’m using the NextGen compiler as a test of how easy it is to integrate additional compilers. So far I can compile, but I haven’t tried the runtime side of it yet. All of this, again, should definitely not go into the trunk before we release the stable; therefore, this code is in the drjava-compilers branch.

All of this will require major merging, of course. I think the order will probably be drjava-guiAvailListener first, drjava-hj next, and drjava-compilers last, depending on how quickly the Habanero group can get their compiler integrated.

When can this begin? After we have released the next stable. I’m still waiting for a few changes to the language levels. But if they aren’t coming soon, I don’t think we can wait, considering how many DrJava users we have, but how few of them use language levels.

Share
Posted in DrJava | 1 Comment

Print This Post Print This Post  

New Version of DrJava with Mint: drjava-r5246-mint-r15405

The DrJava team released a third beta version of DrJava today, drjava-beta-20100711-r5314.

I therefore created a new release of DrJava with Mint: May 8, 2010 (r15405). The latest release is available from the Mint implementation page:

Nothing has changed on the Mint language side.

(Re-posted from The Java Mint Blog.)

Share
Posted in DrJava, Mint | Leave a comment

Print This Post Print This Post  

New DrJava Beta Release: drjava-beta-20100711-r5314

We have just released our third beta version in preparation for the next stable release: drjava-beta-20100711-r5314. You can download it from SourceForge or from the DrJava homepage.

Available for download at http://drjava.org .

DrJava is a lightweight programming environment for Java designed to
foster test-driven software development. It includes an intelligent
program editor, an interactions pane for evaluating program text, a
source level debugger, and a unit testing tool.

In addition to bug fixes in anticipation of the next stable release,
this beta release includes a number of new features introduced after
the last beta release:

These features include a simplified Java language level facility,
the ability to generate a custom DrJava .jar file that contains
additional libraries, and the ability to abort a “Find All” search
that encounters missing files.

Note: Java 1.4 compatibility has been dropped. To use DrJava, you will
need Java 5 or newer.

New features since the last beta release:

  • There is a new option in Preferences/Interactions Pane
    called “Smart Run (‘java’) Command”. If enabled (default),
    the “Run” button and the “java” command in the Interactions
    Pane detects if the class (a) is an ACM Java Task Force
    program (subclass of acm.program.Program) or (b) an applet.
    If (a), then it runs the program’s main method, but inserts
    “code=MyClass” as argument 0. If (b), it starts the
    applet viewer. Otherwise, the “java” command behaves just
    as before.
  • Right margin line.
  • Improved Save As file naming.
  • Tools->Advanced->New DrJava Instance feature.
  • Appending .jar to file name when generating custom DrJava.

Bug fixes since last beta release:

  • StringIndexOutOfBoundsException During Next Word
  • Exception when double click on External process tab
  • This commit fixes some glitches in the new functional
    LL, effectively subsuming both the Elementary (.dj0)
    and Intermediate (.dj1) language levels.
  • Bugfix for throw null
  • Fixing a memory leak in DefinitionsPane.

New features since the last stable release:

  • The Eclipse Java Compiler is now integrated into DrJava. DrJava
    therefore does not require the JDK anymore to compile
    programs. Note that the JDK is still required to use the debugger
    or to create Javadoc.
  • DrJava supports the OpenJDK and JavaMint (multi-stage programming
    in Java; see http://www.javamint.org/ ) compilers.
  • JUnit 4.7 support.
  • ConcJUnit support (for concurrent unit tests; see
    http://www.concutest.org/ ).
  • Access control for private and package private members now enabled
    by default.
  • DynamicJava (Interpreter) error messages are much better,
    especially those involving method and constructor invocation.
  • Added support in DynamicJava for explicit type arguments in local
    function invocations (x = foo(23)).
  • The Breakpoint, Bookmarks, and Find Results tabbed panes now have
    Previous/Next buttons and associated keyboard shortcuts for simpler
    browsing.
  • The Interactions Pane working directory can now be specified even
    when not using projects.
  • If DrJava cannot start, for example because of bad memory settings
    in the Preferences, DrJava will suggest that you let it reset the
    Preferences.
  • The preferred compiler can now be set, and this setting will be
    restored when DrJava starts the next time.
  • Zoom for Print Preview.
  • New Class wizard.
  • Save Copy ability for Definitions documents, Interactions Pane and
    Console Pane contents.
  • The Java Language Level facility has been simplified. There now is
    only one language level called “Functional Java”, using the file
    extension .dj. It is comparable to the Intermediate level and
    can still compile .dj0 and .dj1 files. .dj2 files are compiled
    using the Full Java compiler. DrJava will suggest that you rename
    .dj0 and .dj1 files to .dj files, and .dj2 files to .java files.
  • DrJava can generate a custom .jar file of itself that includes
    additional files. There is a Tools/Advanced/Generate Custom
    drjava.jar menu item that takes the current DrJava executable file
    and a number of user-specified files to generate a new jar file.

    • The libraries included in the new jar file will then
      automatically be included in the classpath and be usable without
      adding them to a classpath somewhere.
    • There is no functionality to remove the libraries again from the
      modified jar file.
    • Generating a custom DrJava jar file disables the check for
      updated versions. Otherwise a user may download an updated
      version that doesnt have required libraries anymore.
  • When DrJava encounters missing files during a “Find All” search,
    it will ask the user whether to continue or abort the search.
  • Improved “New Java Class” dialog with some auto-completion.
  • Better feedback when Java API data is loaded, which may involve
    some delay if it is retrieved from the internet.

Bug fixes since the last stable release:

  • Fixed some indentation bugs.
  • Fixed some GUI initialization problems that prevented DrJava from
    starting on some systems.
  • Fixed a bug that prevented DrJava from opening on MacOS 10.5 or
    10.6.
  • Fixed compiler error when closing curly brace missing.
  • Fixed NullPointerException in Jar Project dialog.
  • Fixed a bug that prevented users from editing External Processes.
  • Fixed a bug in un-commenting source code.
  • Fixed a bug in displaying the Auto-Import dialog in the
    Interactions Pane.
  • Improved suggestion to increase interactions JVM heap.
  • Improved responsiveness when selecting a compiler.
  • Fixed a bug that prevented users from generating Javadoc of
    Language Level files.
  • DynamicJava (Interpreter) bug fix allows the declaration of
    interfaces.
  • Miscellaneous small DynamicJava bug fixes make it much more robust
    and correct, including better handling of member lookup, inner
    classes, enums, interfaces, raw types, static imports, switch
    statements, casts, and final variables.
  • Bugfix for comparing 0.0 == -0.0 and NaNs.
  • Bugfix in DynamicJava: Supports annotation declarations
  • Bugfix in DynamicJava: Fixes parser bug for enums
  • Bugfix in DynamicJava: Fixes implicit accessibility of interface
    members
  • Bugfix in DynamicJava: Fixes checking of assignments from character
    literals
  • Bugfix in DynamicJava: Improves checking of casts
  • Bugfix in DynamicJava: getClass() is a special method with type
    Class for all classes
  • Bugfix in DynamicJava: Improves error messages for inner class
    references
  • Bugfix in DynamicJava: Preserves location in wildcards
  • Bugfix in DynamicJava: Catches errors that occur during static
    initialization of a class
  • Bugfix in DynamicJava: Short-circuiting during type checking
  • Bugfix in DynamicJava: += for strings
  • Bugfix in DynamicJava: Array initializer is assigned to a non-array
    type
  • Misc improvements to DynamicJava SoureChecker
  • Bugfix that prevented users from watching local variables in the
    Debugger.
  • Smaller Java Language Level fixes.
Share
Posted in DrJava | 1 Comment

Print This Post Print This Post  

Cats That Program

I guess it was only a question of time before someone wrote a programming language in LOLcat dialect: LOLcode.

This listing, for example, prints out the numbers one to ten:

HAI
CAN HAS STDIO?
I HAS A VAR
IM IN YR LOOP
UPZ VAR!!1
VISIBLE VAR
IZ VAR BIGR THAN 10? GTFO. KTHX
KTHX
KTHXBYE

They has a funny…

Share
Posted in Uncategorized | Leave a comment

Print This Post Print This Post  

Rice News: The doctor is out!

The doctor is out!
Rice group celebrates million-download milestone for DrJava

BY MATHIAS RICKEN
Special to Rice News

DrJava isn’t the barista behind the counter at Starbucks. But the doc still serves a pretty potent brew — and more than a million customers can’t be wrong.

DrJava Logo

DrJava is a lightweight, integrated development environment for writing programs in Java, the popular, cross-platform programming language developed in the ’90s by Sun Microsystems. Using Java is the simplest way to write programs that run on all major computer platforms, like Windows, Linux and Mac OS. As a result, Java is now the most commonly used programming language, as measured by the Programming Language Popularity index LangPop.com. For several years, universities and high schools have also been using Java in many of their computer science classes.

Our team at Rice University started building DrJava in 2001, and it has now been downloaded more than a million times.

Mathias Ricken is a Ph.D. candidate in computer science at Rice. (Photo by JEFF FITLOW)

Mathias Ricken is a Ph.D. candidate in computer science at Rice. (Photo by JEFF FITLOW)

The JavaPLT group at Rice continues to develop DrJava as a SourceForge open-source project, primarily to give students an intuitive interface as they learn programming skills. DrJava users can easily evaluate Java code in an “interactions pane” that shows precisely how their creation is working. The environment also includes powerful features for advanced developers.

The development of DrJava began in 2001, led by Robert Cartwright, a Rice professor of computer science. From its initial release the following spring, DrJava source code emphasized the use of Java generics, a method for reducing duplication in code by factoring out certain repeating patterns. Early in the evolution of DrJava, support for Java generics was added to the interactions pane. After the addition of a project facility in 2004 and improved support for large projects beginning in 2006, DrJava experienced a sharp increase in popularity.

DrJava supports several Java compilers, including Oracle/Sun’s JDK, OpenJDK and the Eclipse Java Compiler, as well as such research compilers as NextGen and Java Mint. In 2005, DrJava introduced support for a hierarchy of Java language levels, a pedagogic framework that helps beginners learn Java by partitioning the language into levels of increasing complexity.

More than 60 Rice students have contributed to DrJava over the years through Dr. Cartwright’s class on production programming or as part of independent study projects. DrJava is now being used at institutions across the globe, including Princeton University, the University of Pennsylvania, Cornell University, Georgia Tech, the University of California-San Diego, the University of Washington, Université de Nice Sophia-Antipolis and National University Singapore, as well as Rice.

DrJava has also been used as a teaching tool in books published by Pearson Education and Wiley Higher Education.

DrJava is freely distributed under the BSD License. Download it at http://drjava.org/.

—Mathias Ricken is a Ph.D. candidate in computer science at Rice.

(Reposted from Rice News.)

Share
Posted in DrJava, Pictures | Leave a comment

Print This Post Print This Post  

My Name is Not _______

I’m lucky to receive about three or four emails from recruiters and companies per week, asking me if I want to interview. I’m flattered, but perhaps that is also making me a bit picky.

I understand that I’m not the only candidate out there, and that recruiters can be just as choosy; however, you may at least pretend to make an effort. For example, you may want to learn how to use your mail merge program.

Sr. Architect/Developer Opportunity

Hello _______, I hope all is well.

My name is xxx xxxxxxxx and I’m a technical recruiter here in xxxxxxxx. I wanted to reach out and see if you would be interested in a Sr. Architect/Developer position that I have available with an equities trading firm near downtown xxxxxx.

[…]

My name isn’t _______.

Share
Posted in Ramblings | Leave a comment

Print This Post Print This Post  

A Conversation

Friend: “Do you really want an academic job?”
Mathias: “Yes.”
Friend: “Why? Is that what you’re comfortable with?”
Mathias: “It actually isn’t the most comfortable, but it is the most rewarding.”

\*sigh\*

Share
Posted in Uncategorized | Leave a comment

Print This Post Print This Post  

Hurricane Alex

Hurricane Alex, the first hurricane of the 2010 season, is predicted to make landfall south of the US-Mexico border. Still, it’s a reminder to stock up and start paying attention again. And to realize that, nearly two years after Ike, Houston still hasn’t recovered completely.

Hurricane Alex, June 29, 2010 Prediction

Hurricane Alex, June 29, 2010 Prediction

Here are some resources and pieces of information:

  • From the Office of International Students and Scholars (OISS) blog:

    Only those graduate students with housing agreements at the Rice Graduate Apartments or the Rice Village Apartments will be offered on-campus shelter.

    This policy is identical to that of 2009 and the 2008 season that brought us Ike. I still think it’s wrong and a real shame, but at least the policy is being communicated well in advance, unlike in 2008, when the hurricane was so close that Rice’s late announcement prevented graduate students from making other arrangements.

  • Evacuation ZIP codes from the City of Houston. Please do not evacuate the city unless your zip code has been called up for evacuation. In 2005, during hurricane Rita, only three people in Texas died because of the hurricane, but there were 113 indirect casualties caused mainly by the evacuation.
  • Again, from the OISS blog:

    Things you should have available:

    • Three-day supply of nonperishable food and non-electric can opener.
    • Three-day supply of water (one gallon of water per person, per day).
    • Portable, battery-powered radio or television, and extra batteries.
    • Flashlight and extra batteries.
    • First aid kit and manual.
    • Sanitation and hygiene items (hand sanitizer, moist towelettes, and toilet paper).
    • Matches in waterproof container.
    • Extra clothing and blankets.
    • Kitchen accessories and cooking utensils.
    • Photocopies and originals of identification and credit cards (keep ALL immigration documents in Ziplock bags to keep them from water damage.)
    • Cash and coins.
    • Special needs items such as prescription medications, eye glasses, contact lens solution, and hearing aid batteries.
    • Items for infants, such as formula, diapers, bottles, and pacifiers.
    • Tools, pet supplies, a map of the local area, and other items to meet your unique family needs.
  • Keep in mind that your refrigerator and freezer may be out for days or weeks. Frozen or fresh food won’t help you for very long. Don’t rely on frozen pizza or microwave meals, for example. Canned food is best. If the power goes out, eat your perishable and frozen food first.
  • Cordless phones need electricity to run. Cell phones need to be charged, and after a hurricane, the cell phone networks are often damaged, or the demand is higher than the networks’ capacities. Plain, old wired land line phones are the best.
  • After a while, water needs to be pumped by electricity, so there may be no water pressure. As long as you still have water, you can flush a toilet by using a bucket to quickly pour in enough water, but you don’t want to waste your waster. You don’t have to flush every time you use the toilet.
  • If you have to resort to cannibalism, eat the athletes first. Supposedly they taste the best.
Share
Posted in Uncategorized | Leave a comment

Print This Post Print This Post  

No Nifty Assignment for the Educators Symposium

I started writing too late and I discovered I still have some strange source of nondeterminism in my supposedly deterministic single-threaded application, so I won’t be submitting a Nifty Assignment to the Educators Symposium at OOPSLA/SPLASH this year.

Too bad. But maybe I’ll have enough together for the next SIGCSE. Paper submissions are due September 10, 2010.

Share
Posted in Concurrent Unit Testing | Leave a comment

Print This Post Print This Post  

New DrJava Instance Feature

In response to Dung’s problems getting multiple DrJava instances started on MacOS 10.5+, I have added a feature to the latest weekly build of DrJava.

As of revision 5301, there is a “New DrJava Instance…” menu item in the Tools/Advenced menu.

Share
Posted in DrJava | Leave a comment

Print This Post Print This Post  

Useful Google Query to Find DrJava User Sites

I just realized that I can just specify the top-level domain for the “site:” option in Google search queries. That allows me to search for DrJava on all .edu domains:

drjava site:.edu

I have already found a few more user sites that I need to add: Purdue, Princeton, University of Illinois-Chicago, Vassar College, Case Western Reserve, Austin Community College, Wellesley College, Carnegie Mellon, Denison University, Lehigh University, California State University-Northridge, University of Massachusetts-Boston, University of Northern Iowa, and so on.

There are quite frankly too many to list them all. Way to go, DrJava!

Share
Posted in DrJava | Leave a comment

Print This Post Print This Post  

DrJava at UT San Antonio

At today’s JavaPLT/Habanero group meeting, Vivek mentioned that DrJava was used at UT-San Antonio as well. I added it to DrJava’s user sites.

Share
Posted in DrJava | Leave a comment

Print This Post Print This Post  

Multiple DrJava Instances on Mac OS X

Dung Nguyen and I just noticed that double-clicking on the application (or on the jar file) doesn’t bring up a new instance on his Mac (OS X 10.6). It does so on mine (OS X 10.4).

In the end, we started DrJava from the command line, and that worked. I would still like to find out what the difference is. Does OS X 10.5 already behave like this? Is there some setting that governs this behavior?

If you use a Mac, could you please try to start more than one instance of DrJava from the Finder and report back?

Share
Posted in DrJava | 3 Comments

Print This Post Print This Post  

Dull Boy

Two-hour code tests on a Saturday make Mathias a dull boy.
Two-hour code tests on a Saturday make Mathias a dull boy.
Two-hour code tests on a Saturday make Mathias a dull boy.

Especially when they start half an hour late.

Share
Posted in Ramblings | Leave a comment

Print This Post Print This Post  

Upgrade to WordPress 3.0

I just did an upgrade to WordPress 3.0, and I also gave the site a small face lift. The new default theme, Twenty Ten, actually looks quite nice.

Everything seems to be working, but if you notice any problems, please let me know.

Share
Posted in Uncategorized | Leave a comment

Print This Post Print This Post  

Home after Lots of Traveling

I’m finally home again for a bit, after a lot of traveling: During the last month and a half, I’d slept in my own bed for only eight nights.

Share
Posted in Pictures, Uncategorized | Leave a comment

Print This Post Print This Post  

PLDI 2010 Was Great Fun

PLDI 2010 in Toronto is over, and I have to say it was great fun. I met some old friends again, like Gregory and Luke, chatted with old acquaintances, and made many new connections.

There was concurrency and parallelism everywhere, just like at SIGCSE earlier this year, but perhaps without as much panic (“We have no idea how to teach this!”).

I wish I had been up for more even more socializing, but for my kind of personality, talking to people is work. I still enjoyed the conference tremendously.

Share
Posted in Mint, Pictures, Ramblings | Leave a comment

Print This Post Print This Post