Matt RaibleMatt Raible is a Web Developer and Java Champion. Connect with him on LinkedIn.

The Angular Mini-Book The Angular Mini-Book is a guide to getting started with Angular. You'll learn how to develop a bare-bones application, test it, and deploy it. Then you'll move on to adding Bootstrap, Angular Material, continuous integration, and authentication.

Spring Boot is a popular framework for building REST APIs. You'll learn how to integrate Angular with Spring Boot and use security best practices like HTTPS and a content security policy.

For book updates, follow @angular_book on Twitter.

The JHipster Mini-Book The JHipster Mini-Book is a guide to getting started with hip technologies today: Angular, Bootstrap, and Spring Boot. All of these frameworks are wrapped up in an easy-to-use project called JHipster.

This book shows you how to build an app with JHipster, and guides you through the plethora of tools, techniques and options you can use. Furthermore, it explains the UI and API building blocks so you understand the underpinnings of your great application.

For book updates, follow @jhipster-book on Twitter.

10+ YEARS


Over 10 years ago, I wrote my first blog post. Since then, I've authored books, had kids, traveled the world, found Trish and blogged about it all.

New PowerBooks

Apple's New PowerBooks (announced today) don't impress me. Sure it's great that you can get a 1.5 GHz processor now, but I want more. I want at least a 2 GHz PowerBook. Why? The simplest reason is easily demonstrated by the following numbers - comparing my 2.6 GHz Windows XP Deskop to my 1.33 GHz PowerBook.

AppFuse TargetPowerBookDesktop
ant compile 44 seconds 25 seconds
ant test-all 6 minutes 7 seconds 3 minutes 18 seconds

Most Mac Heads will probably cry "compare the Dual G5 and see what happens!" I tried doing this at the MySQL conference last week, but the G5s didn't have internet access so I couldn't download Ant and AppFuse to test it out. Regardless, even if I was able to test it out - the G5 is a Desktop - and I want kick-ass speed in a laptop. You can certainly buy speedy Windows laptops.

This post is not meant to be a bash on PowerBooks - I love my PowerBook and I think that Apple makes the best damn laptop hardware out there. I just wish that Megahertz did matter to Apple and they'd give us a faster laptop. Then again, I'm pumped that these PowerBooks are not G5s, 'cause then I'd want one... ;-)

BTW, I tried Jikes 1.20 to speed things up and AppFuse won't even compile. The problem seems to be a bunch of ".class has an invalid format" errors from Cactus. Sorry Jikes, you failed the 10 minute test.

Posted in Java at Apr 19 2004, 09:28:59 AM MDT 10 Comments
Comments:

I knew this upgrade wouldn't mean much in performance terms. They are squeezing blood from the G4 turnip until they get the heat issues solved on those new 90nm G5's. At least another year before a G5 makes it into a PB. Until then, we'll keep crying in our 167mhz FSB beer.

Posted by Jason on April 19, 2004 at 05:16 PM MDT #

I could be wrong, but I've a vague recollection of getting that sort of error from Jikes when trying to mix classes built with javac and jikes. You did a 'clean' first, didn't you?

Posted by Gwyn Evans on April 19, 2004 at 06:36 PM MDT #

Yep, I did run "ant clean" first.

Posted by Matt Raible on April 19, 2004 at 06:50 PM MDT #

Hard drives can make a huge difference, did you run your test on a RAM drive?

Posted by flf on April 19, 2004 at 07:24 PM MDT #

!Jikes 1.20 seems to be working fine on Linux with appfuse: {{{ Buildfile: build.xml build.properties.missing: define-tasks: init: [echo] Preparing target directory '/home/haroon/src/dist/cvs-src/appfuse-java.net/build/appfuse' [mkdir] Created dir: /home/haroon/src/dist/cvs-src/appfuse-java.net/build/appfuse [mkdir] Created dir: /home/haroon/src/dist/cvs-src/appfuse-java.net/build/appfuse/WEB-INF [mkdir] Created dir: /home/haroon/src/dist/cvs-src/appfuse-java.net/dist/webapps ejbdoclet: [mkdir] Created dir: /home/haroon/src/dist/cvs-src/appfuse-java.net/build/dao/gen [ejbdoclet] Deploy TEMPLATE URL: jar:file:/home/haroon/src/dist/cvs-src/appfuse-java.net/lib/xdoclet-1.2/lib/xdoclet-apache-module-1.2.jar!/xdoclet/modules/apache/axis/ejb/resources/axis-deploy_wsdd.xdt [ejbdoclet] Undeploy TEMPLATE URL: jar:file:/home/haroon/src/dist/cvs-src/appfuse-java.net/lib/xdoclet-1.2/lib/xdoclet-apache-module-1.2.jar!/xdoclet/modules/apache/axis/ejb/resources/axis-undeploy_wsdd.xdt [ejbdoclet] (XDocletMain.start 47 ) Running <strutsform/> [ejbdoclet] --> UserForm [ejbdoclet] --> UserRoleForm [ejbdoclet] --> RoleForm [hibernatedoclet] (XDocletMain.start 47 ) Running <hibernate/> [hibernatedoclet] Generating mapping file for org.appfuse.model.User. [hibernatedoclet] org.appfuse.model.User [hibernatedoclet] Generating mapping file for org.appfuse.model.UserCookie. [hibernatedoclet] org.appfuse.model.UserCookie [hibernatedoclet] Generating mapping file for org.appfuse.model.UserRole. [hibernatedoclet] org.appfuse.model.UserRole [hibernatedoclet] Generating mapping file for org.appfuse.model.Role. [hibernatedoclet] org.appfuse.model.Role compile-dao: compile-module: [echo] Compiling dao... [mkdir] Created dir: /home/haroon/src/dist/cvs-src/appfuse-java.net/build/dao/classes [mkdir] Created dir: /home/haroon/src/dist/cvs-src/appfuse-java.net/build/test/dao/classes [javac] Compiling 14 source files to /home/haroon/src/dist/cvs-src/appfuse-java.net/build/dao/classes [javac] Compiling 6 source files to /home/haroon/src/dist/cvs-src/appfuse-java.net/build/test/dao/classes package-dao: [copy] Copying 1 file to /home/haroon/src/dist/cvs-src/appfuse-java.net/build/dao/gen [jar] Building jar: /home/haroon/src/dist/cvs-src/appfuse-java.net/dist/appfuse-dao.jar compile-service: compile-module: [echo] Compiling service... [mkdir] Created dir: /home/haroon/src/dist/cvs-src/appfuse-java.net/build/service/classes [mkdir] Created dir: /home/haroon/src/dist/cvs-src/appfuse-java.net/build/test/service/classes [javac] Compiling 12 source files to /home/haroon/src/dist/cvs-src/appfuse-java.net/build/service/classes [javac] Compiling 6 source files to /home/haroon/src/dist/cvs-src/appfuse-java.net/build/test/service/classes package-service: [jar] Building jar: /home/haroon/src/dist/cvs-src/appfuse-java.net/dist/appfuse-service.jar copy-resources: [copy] Copying 7 files to /home/haroon/src/dist/cvs-src/appfuse-java.net/build/web/classes [copy] Copying 1 file to /home/haroon/src/dist/cvs-src/appfuse-java.net/build/appfuse/WEB-INF [copy] Copying 1 file to /home/haroon/src/dist/cvs-src/appfuse-java.net/build/appfuse/WEB-INF generate.database.properties: [echo] detected missing database.properties file, building from build.properties [propertyfile] Creating new property file: /home/haroon/src/dist/cvs-src/appfuse-java.net/database.properties [copy] Copying 1 file to /home/haroon/src/dist/cvs-src/appfuse-java.net/build/web/classes copy-web-files: [echo] Copying static files [copy] Copying 41 files to /home/haroon/src/dist/cvs-src/appfuse-java.net/build/appfuse [copy] Copying 17 files to /home/haroon/src/dist/cvs-src/appfuse-java.net/build/appfuse/WEB-INF [copy] Copying 2 files to /home/haroon/src/dist/cvs-src/appfuse-java.net/build/appfuse stage-web: compile-web: compile-module: [echo] Compiling web... [mkdir] Created dir: /home/haroon/src/dist/cvs-src/appfuse-java.net/build/test/web/classes [javac] Compiling 28 source files to /home/haroon/src/dist/cvs-src/appfuse-java.net/build/web/classes [javac] Compiling 12 source files to /home/haroon/src/dist/cvs-src/appfuse-java.net/build/test/web/classes compile: BUILD SUCCESSFUL Total time: 13 seconds }}}

Posted by Haroon Rafique on April 19, 2004 at 07:48 PM MDT #

Yup, G5 PB is what I want. Work just got me a G4, and I'm happy as a clam because I am much more productive on it, but G5 speed would definitely ROCK, plus getting a 64bit version of OS X would help even more I think. R

Posted by Robert S. Sfeir on April 19, 2004 at 09:18 PM MDT #

Well, I couldn't resist. I downloaded appfuse (confusingly found two directories and compiled the one that has a README indicating changes in 1.4), after doing 'ant clean' of course, on a dual 2GHz G5 with lots of memory. Compile time is 15 seconds (according to ant).

Is it just me, or would you expect it to be faster than this...

Posted by Jon Mountjoy on April 20, 2004 at 09:43 PM MDT #

That's fast - thanks Jon. Now if we could only get that kind of speed in a PowerBook. ;-)

Posted by Matt Raible on April 20, 2004 at 09:59 PM MDT #

[{Hey Matt, Can you provide me a link from your blog to the Jikes exectuable you built on mac os x.. The developer works website does not have any dmg file for me to install. Thanks. I am having build issues with jikes.. }]

Posted by Shawn Osteen on April 21, 2004 at 02:47 AM MDT #

Shawn - I never tried Jikes on OS X, just on Windows XP. Sorry.

Posted by Matt Raible on April 21, 2004 at 05:01 AM MDT #

Post a Comment:
  • HTML Syntax: Allowed