Reading up on Rhino and Javascript

Read: Steve Yegge: The Next Big Language

Read: Steve Yegge: The Universal Design Pattern

Read: OCI: Weiqi Gao Ph.D.:Scripting Languages For Java (Javascript/Rhino versus Jython)

Read: Front Side: Learning Javascript from the Command Line

Read: Front Side: Taming the Rhino: Making Mozilla’s Javascript Command Line a Little Less Brutish

Download: Rhino

Download: JLine

Reading up on JavaSpaces

java.sun.com: Qusay H. Mamoud: Getting Started With JavaSpaces Technology: Beyond Conventional Distributed Programming Paradigms

gigaspaces: JavaSpaces introduction

InfoQ: Video: Nati Shalom is the CTO and Founder of GigaSpaces: Three steps for turning a tier-based/Spring-application into dynamically scalable services

springmodules.dev.java.net: Chapter 5. JavaSpaces

gigaspaces.com: Plain JavaSpaces Tutorial

Programming Links for May 27th, 2009

InfoQ: Bruce Eckel on Python, Java, Flex, and RIAs

O’Reilly: Dreaming of Rails as the Next Microsoft Access

It’s Only Software: 5 Minute Guide to Spring and JMX

Yet Another Java Blog: 5 Part Series: Intro to Caching,Caching algorithms and caching frameworks

Eli Bendersky: A year with Python

itzer.com: Java Kicks Ruby on Rails in the Butt

Netbeans Beta 6.7 setup

For whatever reason, the latest release of Netbeans was giving me some issues. Over at “Java How To…” was an excellent short piece on avoiding common Java heap space configuration errors in all sorts of containers, environments, and IDEs. It’s one for your bookmarks.

Another tip – close the Tasks pane – it triggers excessive scanning on large projects. Open it when you have the opportunity to. But the last thing you want is to shut down with it open – it will simply make start up intolerable if you have a very large project opened.

There is an open ticket working on the worst offender keeping me from adopting Netbeans enthusiastically – excessive “Project scanning”.

Programming links for Sunday, March 15h, 2008

YouTube: Google Tech Talk: Linus Torvalds on git

code zen: On Technology, User Experience and the need for Creative Technologists

Joel Spolsky: How to be a program manager

Explanations to common Java exceptions – who said Java programmers didn’t have a sense of humor.

IndexOutOfBoundsException – You have put your index finger in an unacceptable place. Reposition it and try again.

Okay, maybe not.

Some programming links and reading

On loving what you do and practice

I love what I do. That doesn’t mean I don’t recognize it as hard work – but I do believe I am one of the few lucky ones who has found a career that challenges, excites, and pays the bills. I repeat however – it is hard work. There are no free rides in life. You need to work at what you do in order to be a success at it.

Coding Horror: Programming: Love It or Leave It and the thread at Joel on Software that inspired the post – “Thinking of leaving the industry”.

Tim O’Reilly: Hard Work and Practice in Programming – an email thread discussion about programming, learning, and practice. via rc3.org.

On constructive criticism and feedback

ThousandtyOne!: Leadership, Constructive Criticism And Not Playing The Blame Game:

In the world of software development most managers are taught the blame game, right when they are young and budding management students, business analysts or programmers taking their first fumbling steps at managing a team. For most managers, blaming the process, an individual’s incompetence or the whole team’s incompetence is an easy excuse for all failures; including theirs. I’ve hardly ever seen managers personally attached to team members, spending genuine effort in trying to help them find their core competencies and coming forward to blatantly own up failures and take responsibility when things don’t work out.

I’ve hardly ever seen managers lending constructive one on one direct verbal criticism followed by genuine help. I’m not talking about a generalized you-need-to-get-better-at-coding-email followed by be-careful-next-time-email followed by I-am-going-home-but-check-in-the-code-and-email-me-the-status-as-soon-as-possible kind of criticism here.

I’m talking about the blatant and precise your-use-of-object-orientation-in-the-administration-module-sucks said with empathy, followed by a joke, followed by lets-go-out-for-a-cup-of-coffee, followed by lets-stay-late-and-refractor-together kind of constructive criticism. Or for that matter, let’s-meet-during-the-weekend-and-fix-this kind of constructive criticism; and that dear reader, irrespective of what they tell you, is not a waste of your time; it’s what you were hired to do; especially If you were hired to lead a team. If you weren’t specifically hired to do that, I suggest that you do it anyways.

If you work with a team, don’t criticize ruthlessly; if you lead a team don’t play the blame game; and remember, it doesn’t matter what they teach you in management schools or tell you at your workplace, if your project isn’t cruising along successfully, it’s always your fault.

If you must criticize, do so constructively, followed by empathy, followed by genuine help. I can’t teach you how to do that. What I can do, however, dear reader, is end this post abruptly and rather dramatically, leaving you with words of wisdom worth pondering on, from one of my all time favorite movies. Here’s Wishing you, good leadership, healthy teams and a good life.

Jonathan Lange: Your Code Sucks and I Hate You: The Social Dynamics of Code Reviews:

Code reviews provide an amazing opportunity to grow as a programmer and to improve the software we make. There are many choices that a project can make about how reviews are done and what they can achieve. By thinking carefully about how technologies and processes affect the basic human interactions involved in code review, open source projects can avoid traps that scare off newcomers or wear down longstanding contributors and instead focus on building the best software possible.

Some unrelated additional links

devChix: Beautiful Python: The programming language that taught me how to love again

Software for Civic Life: An Interview with Mike Mathieu of Frontseat.org

Correcting deficient JUnit behavior in Netbeans

Eclipse gets this correct ‘out of the box’, when running a unit test – you want to be able to follow a test failure into the source code of the actual test with a click or keyboard shortcut. Netbeans, with pre-existing projects managed with Maven, doesn’t seem to do that. There is a fix on the wiki I need to give a shot.

“Who Says Java Programmers Don’t Have A Sense Of Humor?”

The Onion: Nate Orenstam: Who Says Java Programmers Don’t Have A Sense Of Humor?: About an hour later, while Tim was using the “facilities,” I went in and changed the classpath on his computer, resulting in a confounding stream of ClassNotFoundExceptions. It took poor Tim a couple of minutes to figure out what the heck was going on. All the while, I was in the next cubicle, laughing my Dockers off.