Matt RaibleMatt Raible is a writer with a passion for software. 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.
You searched this site for "<a href=". 3,022 entries found.

You can also try this same search on Google.

What do you get a 1 year old for their birthday?

Abbie in September Abbie turns 1 year old next Wednesday - a birthday so good that they've decided to release The Matrix: Revolutions on the same day! We're having a party this weekend (yes, a keg will be there for the papas) and I don't know what to get her for her birthday. So I'm asking all you Dads out there - what was the coolest gift you got your kid(s) for their 1st birthday? When I say cool - I mean to say that they thought it was cool. Of course, if Mom thought it was cool - that counts too (esp. since it seems to be just as much for her as for Abbie).

Posted in General at Oct 29 2003, 07:32:43 AM MST 10 Comments

Apache 2.0.48 and 1.3.29 Released!

The most popular web server has some new releases for you security conscious developers. What's changed? View the release notes for Apache 2.0.48 or for 1.3.29. You can download both versions here.

I found it strange that Panther shipped with 1.3.28 rather than 2.0.47 - luckily, I was able to quickly install 2.0.47 (thanks to a backup of /usr/local) and disable 1.3.28.

Posted in The Web at Oct 29 2003, 07:25:52 AM MST

Mozilla 1.5 Released!

The Mozilla Foundation has released Mozilla 1.5. I don't really have any reasons to use Mozilla anymore because of Firebird, but since Mozilla Firebird depends on the same core as Mozilla - I suppose this is good for me. I wonder if it means that Firebird and Camino will have new releases soon?

Posted in The Web at Oct 28 2003, 08:04:27 PM MST 1 Comment

[Proof] Panther ships with Ant, XDoclet and JBoss!

Simon mentions some treats that Panther has for developers:

I've just installed Panther and since you don't get stuff like CVS installed by default, I decided to open up the XCode CD and install the developer tools. To my surprise there are some Java tools tucked away including Ant, XDoclet, log4j and JBoss.

Here's a screenshot to prove it really does exist:

Developers Tools options for Panther

Wicked cool. It sucks that Ant is out of date (1.5.3), but that's OK since I already have it installed.

Oh yeah, and the 3rd Party RAM I have that was causing the Panther install to hang? I re-installed it and everything seems to work just fine.

Posted in Java at Oct 28 2003, 06:52:59 AM MST Add a Comment

My name hurting Pro JSP sales?

I guess Amazon (or Apress) figured that if they removed my name from Amazon's listing of Pro JSP - they'd boost their sales. I don't mind, whatever it takes!

Posted in Java at Oct 27 2003, 11:19:01 AM MST 4 Comments

Getting help from the Geniuses

I'm now at my local local Apple Store trying to get this damn upgrade accomplished. The guy who's working on it thinks its fingerprints on Disc 1 that's causing the problem. I'll be fricken livid if this is the problem. If it's not, that means this guy doesn't believe I know what I'm talking about and I've just wasted 30 minutes while he sees the same behavior that I've seen. If it is fingerprints, I'm an idiot and I'll walk out of her with an upgraded machine in 30 minutes or so.

Update: A nice stack trace towards the end of disc 1 finally prompted them to try new CDs. Once again, more waiting...

Update 2: New CDs didn't help - the upgrade still froze when installing Asian Languages (or something like that). I left it there for them to fix. Hopefully, I'll get back an upgraded machine in the next day or two.

Update 3: I just talked with the guys from the Apple store - my 3rd party RAM was causing the problem. They removed it and Panther installed just fine. Now I get the joy of installing it again (when I get home tonight) and hoping it works. If not, I'd better get my money back from OWC!

Posted in Mac OS X at Oct 27 2003, 10:43:47 AM MST 1 Comment

The upgrade saga continues...

Continuing from yesterday...

Today I tried doing a "clean install" with Panther. That didn't work either - it quit with a "installation failed" error. Finally, I tried erasing my hard drive and going that route. Then Panther said it couldn't find an OS X installation to upgrade. To make matters worse, I can't boot to my OS X 10.1 nor 10.2 install disks. I hold down Ctrl+C with no luck. Thanks to some advice on the Apple Discussion Forums - I'm now restoring back to 10.2. I suppose I'll try to upgrade again after that - but I'm suspicious that the CDs are bad.

Later: Must be a bad install CD. I restored my PowerBook with the restore DVD and tried to upgrade. It made it most of the way through the upgrade, and then gave me a gray screen with a spinner at the bottom. After 20 minutes of waiting, I figured it was hosed and re-installed 10.2 with the DVD. I guess I'll head to the Apple store for an exchange tomorrow. Panther truly sucks right now in my opinion - don't upgrade unless you're a glutten for punishment (like I am).

Posted in Mac OS X at Oct 26 2003, 06:43:25 PM MST 1 Comment

eBay hooks me up with a new computer

One good quality of a company - they keep your computer up to date. The company I work for bought me a new computer today. Dell Dimension 8300 P4 2.6 HT 80G. This will replace my 1.5 Dell Dimension 8100 - XP Pro, which (with cygwin) continues to me my favorite development environment. We're giving my Dell and Julie's Dell (that I bought for $200 from eDeploy) to charity. I also have an old 300 MHz Compaq Presario that's slow as slugs - I'm going to throw it away and not place that burden on someone else (it serves as a patio umbrella stand right now).

Posted in General at Oct 23 2003, 10:48:24 PM MDT 2 Comments

AppFuse and all it's libraries

I received a question about AppFuse that I've been pondering every since. The question basically boils down to two things:

  • How do you manage Eclipse's .classpath file in conjunction with lib.properties (the file that manages it for Ant)?
  • When using AppFuse for multiple projects, do you put a "lib" folder in each project or use a central repository?

Quick Answers: I replace files in the appfuse/lib directory and update lib.properties. Then I update my project properties in Eclipse to reference the new jars. A pain, yes - but only a 2 minute process. I run all my tests before I bother changing the Eclipse classpath. As for multiple projects - the easiest thing to do is to move $yourProject/lib to a folder called "libs" in the same directory as $yourProject and change the ${lib.dir} property in properties.xml to point to the new folder.

Begins Rambling... I'm currently using AppFuse on 3 different projects. 1 is AppFuse itself, the 2nd is Struts Resume, and the third is for a client I created a webapp for in August. Right now, when I synch up Struts Resume with AppFuse, I copy paste from appfuse/lib to struts-resume/lib and update the lib.properties appropriately. I can't just copy lib.properties to struts-resume/lib because struts-resume uses libraries that appfuse doesn't. Yes, this is admittedly a pain in the arse. It's almost as bad as changing all the method signatures when moving the Hibernate Session from all method signatures into the constructors (can your IDE do that?!). I don't want to make people download appfuse to build struts-resume though, so I doubt I'll change this process.

The whole "massive lib folder" has been bouncing around in my head for quite some time. I'd like to use Maven or Greebo to download the dependencies for AppFuse, but at the same time, it's nice being able to download the whole thing at once and be up and running. I don't want to go the Maven route because I don't really want/need a website for AppFuse and it sounds tough to get it working with XDoclet (though WebShop looks like it might be a good template). KISS

The project.xml in AppFuse is my feeble 20-minute attempt to get it Mavenized (it's currently not used). I tried Greebo this morning, and it really does nothing for me. Especially since I've setup separate compile/test classpaths (read from lib.properties). It'd be a real pain with Greebo to separate out the classpath's for testing and building - it seems to only support one long classpath. Also, who wants to make their whole best-practices open-source app dependent on a 0.1 open-source app?

As for having my IDE (wether it be Eclipse or IDEA) reading the classpath from Ant - that would be the sweetest feature of the year! Currently in Eclipse and IDEA, I have to give an absolute path to j2ee.jar since I don't want to distribute it (it's 11 MB). When I switch b/w OS X and WinXP, I always have to change this classpath. I'm sure there's an easier way with setting variables in the IDE, I just haven't figured it out yet.

The other thing that is annoying is that IDEA doesn't seem to read my $ANT_HOME environment variable. Does it have it's own $ANT_HOME? It's annoying for me b/c I check for JUnit classes in the classpath in my "init" task, and IDEA doesn't find them. Don't worry Eclipse bashers - it doesn't work in Eclipse either. This is fine with me b/c I prefer the command line, but those "I use my IDE for everything" folks might not like it because they can't run AppFuse's build.xml file from w/in their IDE.

Posted in Java at Oct 23 2003, 06:21:59 PM MDT 7 Comments

Blogging leads to Free Book

This blogging thing rocks. Today I got one of the books I've been meaning to buy - for FREE! Check out the following e-mail I received from Manning:

Hello Matt:

We are contacting you regarding Vincent Massol's new book, JUnit in Action, which Manning will be publishing in November. Vincent mentioned that you might be interested in certain parts of the book which relate to topics recently discussed on your blog http://www.raibledesigns.com/page/rd. There is a chapter on unit testing tag libraries.

He has asked us to offer you a complimentary copy of the PDF ebook which just became available today. We hope you will find it of interest.

Sweet! Thanks Vincent! I read the chapter on unit testing tag libraries - very clear and to the point. Unfortunately, for tags with bodies, you still have to verify HTML, so tagunit might be better for these. I like the coverage on the Maven Plugin for Cactus and also how to use JSTL's ExpressionEvaluatorManager for reading tag attributes. The link I found, the chapter has code samples.

I've never really liked eBooks, but I have to admit, this is pretty damn convenient. Especially since I tend to pack around 10-20 books to each new contract. What about sharing? Can I let co-workers borrow my PDF like I let them borrow my books?

Posted in Java at Oct 22 2003, 01:43:16 PM MDT 4 Comments