In Commentary on
14 March 2010 tagged Java, open source with no comments
Dave Johnson on why he’s migrating his build scripts for Roller from Ant to Maven:
I was a Maven hater and resisted it for a long time but over the years Maven has gotten much better, it’s well supported in IDEs and as far as I can tell, Maven has replaced Ant as the de facto build system for Java projects. If you want new developers be able to easily build, debug and run your code via command or their favorite IDE then Maven is the way to go, and that’s especially true for open source projects like Roller.
This is my impression as well. I started to create a new, open source Java application the other day, and it occurred to me that for the build script, I should use Maven because it seems like that’s the way everybody is handling dependency management these days. Dave’s post is one more indication that I was probably right about that.
In Commentary on
14 August 2009 tagged Java, PHP, Ruby, software development, testing with 4 comments
Giant Robots asks the question, Why Do Rubyists Test So Completely? It’s a good question. Developers on other platforms would benefit greatly from the culture of testing that has been established among Rubyists (and especially Rails developers). They have their own list, and I agree with all of the items on it. I have one reason that I’m surprised they didn’t list.
Rails makes it really easy to start testing. When you generate a new Rails application, it gives you a place to put your tests. When you generate controllers and models, it creates skeletal tests for them. Nobody has to sit and wonder, “What should I be testing.” The framework tells you. So the next step is just to fill in the blanks. Then when you want to run your tests, you just type “rake” in your application directory.
Java has JUnit and all of the IDEs have test runners, but beyond that, you’re on your own. What do you test? How do you organize your tests into suites? How do you run the suites? These are all questions you have to answer before you build a testing regime. Individual unit tests are easy to write, but getting it together to really make a habit of testing is a lot more work than it is with Rails.
And in the PHP world, things are even worse. I have never seen a PHP application with a robust unit test suite, although I’m sure they exist.
The Rails approach makes the biggest difference with people who aren’t already committed to unit testing. If you know the value of testing, you’ll jump through the hoops to set up tests, even if it’s a pain. If you’re not yet convinced, then the extra work required to set up unit testing with other platforms prevents people from getting started. It’s very much the deliberate choices the creators of Rails made to encourage and facilitate testing that explain in large part why testing is such a part of the culture.
In Commentary on
24 March 2009 tagged browsers, financial crisis, Java, JavaScript, links, open source, pdf, Ruby, science, Web development, World of Warcraft with no comments
There are a whole ton of links in the backlog today.
- xhtmlrenderer: The Flying Saucer Project. A tool to render HTML in PDF format (supports CSS).
- Antonio Cangiano: Ruby’s Biggest Challenge for 2009. A plea for Ruby developers to move to Ruby 1.9.1. Getting all of the libraries and Rails plugins updated is going to be a big job.
- Ajazxian: Richard Stallman: Free the Javascript. People make full of rms, but he is an extremist for a good cause. His radical stance in many ways frames a debate that is worth having.
- TV Guide: Battlestar Galactica’s Ron Moore Answers Our Burning Questionsm. I totally get the unhappiness with all of the deus ex machina aspects of the series finale, but I enjoyed it anyway.
- Thoughtbot: Testing Rake’s Integration. How to write integration tests for Rake tasks.
- Doug Bowman: Goodbye Google. Remarks on leaving Google. Nice reading for all of us who were never offered a job by Google.
- The Big Picture: Scenes from 30,000 meters above. High altitude photographs taken by a weather balloon launched by Spanish students.
- The Best Pictures from the BOREALIS Archives. Another student weather balloon project.
- Karl Martino: Here’s to dreaming big and doing it. More links relating to the weather balloon project.
- What they make: The highest paid chief executives in digital media. I’m surprised the CEO of Tivo makes more than the CEO of Netflix.
- WoW Insider: Authenticator app coming to iPhones, iPods, and other mobile devices. Blizzard is expanding the authentication options that prevent World of Warcraft account theft.
- FiveThirtyEight: Why AIG Paid the “Bonuses”. Most interesting remarks I’ve read on this topic.
- istartedsomething: Expression Web SuperPreview makes cross-browser testing like moist delicious cake. Seems like a major advance in cross-browser testing.
- Laughing Meme: Streams, affordances, Facebook, and rounding errors. Insightful remarks on the Facebook redesign.
- New York Times: Hadoop, Analytical Software, Finds Uses Beyond Search. I still don’t understand MapReduce as well as I should.
- Antonio Cangiano: Introducing Redis: a fast key-value database. Still looking for the right project to use this technology for.
- The Annotated Watchmen. For after I finish the graphic novel.
In Commentary on
24 January 2009 tagged css, design, games, human rights, icons, Java, JavaScript, links, sports, war with no comments
I’m going back to packaging up my del.icio.us bookmarks daily and posting them here.
- The Black Triangle is an article from 2004 about game development found by Jason Kottke. It describes the disconnect between programmers and users, where users are unimpressed by seeing something relatively simple on the screen, and developers are thrilled at the huge amount of work that into getting that simple thing onto the screen. I’ve found it’s never a good idea to show customers the Black Triangle. It always comes later in the process than they’d think and often freaks them out.
- waferbaby: The Setup. Interviews with people about their computer setups. I can never read enough of these.
- New York Times: Gazan Doctor and Peace Advocate Loses 3 Daughters to Israeli Fire and Asks Why. The horrific cost of war.
- Dr. Saturday: Australian Rules’ blood’s worth bottling. A proposed playoff structure for college football. A more interesting approach
- Going.com: Newspapers Covering Obama’s Inauguration. A huge collection of newspaper front pages from President Obama’s inauguration. And yes, it still feels weird to type “President Obama.”
- CSS Newbie: The EqualHeights jQuery Plugin. I’m always looking for better ways to set columns to equal heights on a Web page.
- Glenn Greenwald: Mohammed Jawad and Obama’s efforts to suspend military commissions. When anyone questions whether the United States tortures people or tortures the wrong people, you can forward them the story of Mohammed Jawad, a teenager captured in Afghanistan who was coerced to confess to killing US soldiers with a grenade. The military prosecutor in his case petitioned that he should be released and ultimately resigned rather than prosecute him.
In Commentary on
23 January 2008 tagged Java, software development with 1 comment
The Spring Team blog announces that the Spring framework is now a more commonly requested skill for developers than EJB. About four years ago, I started building applications using Spring and Hibernate, even though much of the industry focus was still on EJB. I thought that the approach that I and a number of other people had started taking was correct, I was a little bit scared about neglecting a skill that so many employers were seeking.
So I went out and bought the book Mastering EJB and read it cover to cover, just to make sure I wasn’t missing something. After reading it, I realized that while I could see that some projects would require EJB, they would not have made writing any application I’d ever worked on easier, nor would they have improved the functionality of any of those applications. So I promptly forgot everything I’d read and continued to use the lightweight libraries.
It’s nice to look back and find myself completely vindicated.