Computing Thoughts

Bruce Eckel's Programming Blog

Sep 11, 2017 - 1 minute read

A Possible Solution To The Open Source Funding Problem

William Gross has posted Give Away Your Code, But Never Your Time, a potential and/or partial solution to the problem of funding open source projects, which I offered a solution for here. I’ve since heard from people pointing out projects that have actually used the “bounty” approach – I was unintentionally describing something that already exists. We’ve been solving all these other problems around open source, but not the essential one: how can people get paid for developing open-source software.

Jul 19, 2017 - 11 minute read

Gophercon And The Concurrent Python Developer Retreat

I found Gophercon to be valuable and it restarted my interest in the Go language. I’m currently working my way through The Go Programming Language Phrasebook and plan to explore ways to call Go from Python (described later in this post). If I hadn’t been attending with my friend Luciano Ramalho it would have been a different experience. The conference is clearly commercial and I had a strong sense of having my experience decided for me.

Jun 27, 2017 - 3 minute read

On Java 8 And The Concurrent Python Developer Retreat

For many years I’ve been getting requests for some kind of sequel to Thinking in Java, 4th Edition. Over two years ago, I finally decided to “pull together something quickly.” After all, how much time have I spent writing about the language? I should be getting pretty fast by now. Self-delusion knows no bounds. No matter how many books I write, every one seems to take longer than the previous ones, not shorter.

May 30, 2017 - 12 minute read

Pycon 2017

This year I repeated my strategy of “Don’t go to any recorded sessions,” and also did more volunteering (one of these was at the green room, and again one of the session chairs failed to show up so you’ll see me introducing three of the talks). Dinners In the past I’ve kind of stumbled into dinner groups, but not always. This time I made more of an effort and was rewarded with dinner friends every night.

Apr 19, 2017 - 3 minute read

PyCaribbean Keynote On Youtube

I gave the closing keynote at PyCaribbean, the Python conference held in Puerto Rico. It’s called Science is What Works, and you can see it on YouTube. The slides are available here. I think a closing keynote should provide perspective and look at things from a higher point of view. By then, the audience is full of technical information and, I believe, looking for relief rather than more code. Even though I was a physics major as an undergraduate, I’ve begun to realize over the last ten years or so that I didn’t understand what science was, and that’s probably why I was only a mediocre physics student, at best.

Jan 13, 2017 - 5 minute read

Constructors Are Not Thread-Safe

When you imagine the construction process, it can be easy to think that it’s thread-safe. After all, no one can even see the new object before it finishes initialization, so how could there be contention over that object? Indeed, the Java Language Specification (JLS) confidently states: “There is no practical need for a constructor to be synchronized, because it would lock the object under construction, which is normally not made available to other threads until all constructors for the object have completed their work.