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.

Fedora like OS X?

Is Fedora like OS X? It almost seems like it - everything "just works." Well, at least after my 2nd format-and-install it does. Last Wednesday, I tried to upgrade from Red Hat 9 to Fedora Core 1. It didn't go very smoothly and the upgrade wasn't possible (installer said not enough disk space - I know there's enough). I ended up doing a format and clean, and got most things working but my USB Printer. I spent hours trying to get the damn thing working on Friday night (until 3 a.m.). I spent more time compiling things and trying to get it to work on Saturday (insert picture of me banging my head against the wall). Finally, I gave up on Saturday night and reverted back to Red Hat 9 (it worked before). Formatted and installed. Then I spent all day Sunday trying to get DNS/DHCP and HPOJ (Printing) working. It worked before - what the hell?!

And then on Monday morning, I found the simple-ass solution that was staring me in the face the whole fucking time: Turn off the printer and turn it back on. I found it on a mailing list or something. So, since I knew the solution, and I still hadn't gotten DNS/DHCP/Samba working on RH 9, I decided to upgrade to Fedora (again) last night. Again, same error - on a new 30 GB hard drive - not enough space to upgrade. So I formatted and installed. Lo and behold, I power cycled the printer and everything worked! I installed Dynamic DNS (I did have to run rndc-confgen) and configured Samba to recognize my printer. Viola - in under 20 minutes after I installed Fedora - everything worked. I spent 15 hours trying to fix something that eventually took 1 hour to fix. While setting this stuff up, and everything "just working" - I thought "Fedora is just like OS X - everything just works." Now if I could only get a Ximian Desktop for Fedora.

Notes to self: You're a Linux rookie. Don't mess with the default config. Don't bang your head against the wall for more than an hour. Don't try to upgrade Red Hat 9 to Fedora.

Posted in General at Nov 25 2003, 02:19:39 PM MST 2 Comments

[Hibernate] Generating composite-id code using XDoclet

It's been a while since I dug into the guts of XDoclet and Hibernate. Now I'm digging in on my new project to figure out the best way to generate a <composite-id> entry in my .hbm.xml files. If you know something about Hibernate and XDoclet, please read my questions on the Hibernate Forums.

Posted in Java at Nov 24 2003, 12:41:12 PM MST 1 Comment

Doubling the size of our house

Marion (DU) House We love where we live in Denver right now. We originally bought this house because we wanted a rental property and it's close to the University of Denver (where I went to college). After living here for a couple of months, we discovered that the location absolutely rocks. It's 2 blocks from Safeway (grocery store), 2 blocks from Porter Hospital, 3 blocks from our bank. It has a couple liquor stores within a couple blocks and many restaurants within walking distance. The house is small, 675 square feet, but the lot is huge - 2.5 times the normal lot size. So we decided to investigate the idea of adding an addition onto the house. After talking with a few builders, we decided on one and the project starts one week from tomorrow. We're going to gut the current house and make it into 3 bedrooms. The new additional will be the same size as our current house and it's going to be one big open room - with a great room and kitchen. We're also tearing down our 1-car garage and building a 2-car garage in the alley. Exciting times - should be done by mid-summer next year. I'll make sure and take lots of pictures (and post them) as the project progresses.

Posted in General at Nov 23 2003, 11:32:37 PM MST 6 Comments

User-Mode Linux ~ should I switch my ISP?

This User-Mode Linux sounds like a great opportunity for hosting this site. I currently pay around $50/month to host this site, and there's two things that are frustrating:

  • I only get 5 GB of bandwidth, and I pay the same as my provider for any extra - I usually pay $30 extra per month for bandwidth.
  • I get a max of 20 connections per mysql instance. While this should be plenty, it does seem to cause this site to crash, and I'm not motivated enough to dig into Roller/Tomcat and figure out why.

I do have a cable internet connection, so I could host this site myself, but my upload speed is only 241 KB. For you folks that do use UML, does anyone have experience with running Java (i.e. Tomcat or Roller) and MySQL?

Posted in Java at Nov 23 2003, 09:22:02 PM MST 9 Comments

1.5 GB of RAM in Windows XP

I added another 1 GB of RAM to my new Windows XP box (2.6 GHz Dell Dimension 8300) last week - to 1.5 GB. At first, I wasn't impressed, mainly because Ant/Java didn't seem to have much of a performance increase. I have noticed a *huge* improvement in the opening of apps and Windows Explorer. Everything just snaps, no waiting - click and it's open - very nice. Browsers (IE and Firebird) seem to be a lot faster as well.

Posted in General at Nov 22 2003, 11:48:54 AM MST 4 Comments

First Snow in Denver

It's really coming down right now - I wouldn't be surprised if we had 6 inches by nightfall. Click on the images below to zoom in.

thumbnail
First Snow 2003
thumbnail
View down our Street (near DU)

Posted in General at Nov 22 2003, 11:16:54 AM MST Add a Comment

RE: Compressing and Caching in your webapps

Jayson Falkner writes about two Filters everyone should have in their webapps: one for compression (via gzip) and one for caching. I try to add a CompressionFilter to all the apps I write, but I don't have a CacheFilter. So my question is: should I add Jayson's CacheFilter to AppFuse or should I use OSCache? I haven't got to Dave's chapter yet on performance and caching (in JSP 2.0), so I haven't read his opinion - what's your opinion? I like Jayson's solution because I can add 3 new classses with no additional JARs - AppFuse already has 21 jars (Struts, Hibernate, JSTL + a few other taglibs).

Posted in Java at Nov 21 2003, 11:57:41 AM MST 4 Comments

Setting up my Fedora box with Out-of-the-Box

Rather than spending hours trying to recover my Red Hat 9 disk, I built a new disk/box with Fedora. For all I know, the RH 9 one is still recoverable, but I'm an upgrade junkie so I couldn't help myself. Setting up DHCP with Dynamic DNS was a bit of a pain, even when I followed this howto. I believe I ended up re-installing bind and everything worked (this was a 2 a.m. last night, so my memory is a big foggy).

The only thing I haven't been able to get running (so far) is my USB Printer, details on hpoj mailing list. It was easy to setup my OfficeJet G85 on RH 9.

As for setting up my dev environment, it was a breeze using Out-of-the-Box. However, out of the box the installer didn't work. I had to install "gd-devel" (a dependency of viewcvs) and then everything installed just fine. Hat tip to Eric Weidner (of EJB Solutions) for the tip. I was able to select the applications I wanted and get all of the following installed and running: MySQL, PostgreSQL, Apache, Tomcat, mod_jk2 (to connect apache and tomcat), Roller, Scarab, CVS, Java, Ant and ViewCVS. I'm sure I installed more, but these are the mains ones I was looking for.

While the installer for OBox takes a while to run (on 1.5 GB RAM with 1.5 GHz = 30 minutes), the beauty of OBox is that it configures everything for you and starts all the services. The one thing that is disappointing (or maybe it's good) is that it didn't setup any environment variables - no $CATALINA_HOME, $ANT_HOME, etc. No biggie, I can set those up myself.

I might just have to burn a CD of OBox for future clients. It'd be nice to show up with my development environment on CD and ready to go. One bug I did find was that the mod_jk2 install configures mappings for all the struts example apps (which I didn't install).

Posted in Java at Nov 21 2003, 12:55:55 AM MST Add a Comment

Fedora Core 1 has killed my Red Hat 9 box

I don't know if it was Fedora or me, but it appears that my main hard drive on my Red Hat 9 box is hosed. Here's what I posted on Experts Exchange and the Fedora Mailing list:

I tried to upgrade to Fedora Core 1 from Red Hat 9. I experienced some issues with disk space, and based on someone's advice, I deleted /tmp and created a symlink /tmp -> /home/tmp. I did not have /home/tmp created when I tried to install Fedora. It warned me about having a relative symlink during the upgrade, so I rebooted to undo the symlink. I've rebooted a number of times since then, and did get in to rm /tmp and mkdir /tmp. Now it appears I'm hosed - here's the message I get on startup:

Creating root device
mkrootdev: label / not found
Mounting root filesystem
mount: error 2 mounting ext3
pivotroot: pivot_root(/sysroot,/sysroot/initrd) failed: 2
umount /initrd/proc failed: 2
Freeing unused kernel memory: 132K freed
Kernel panic: No init found. Try passing init= option to kernel
_ <- Flashing cursor

I received a few responses from the mailing list, but my main hard drive appears to be hosed (unrecoverable). I tried doing a clean install, and Fedora again complained about not having enough disk space to copy the images over.

Finally, I took a break and thought of a workable solution while putting a turkey in the oven. I have another machine that has the exact same hardware as my Linux box - it has Windows XP on it, but I'm not using it. So I'm in the midst of installing Fedora on it, and then I'll move the hard drive. I lost all my configured stuff: Apache, CVS, Tomcat, DNS, DHCP, CUPS, but I was able to select most of it in the installation process. Let's hope all these packages are the latest and greatest - then I won't have much configuring to do.

Posted in General at Nov 19 2003, 01:45:56 PM MST 6 Comments

Wanted: View Source with syntax highlighting

The Display Tag has a nice feature in it's documentation: the ability to view the source of a JSP [example]. This is done using a servlet, and works fairly well. However, as I write documentation for Struts Menu, I'm finding I need to view more than just the source of JSPs, but also the source of stylesheets, scripts and Velocity templates. So far, I've found that the view source protocol works fairly well for this.

Nice Tabs Menu Examples: generated HTML, its JavaScript file, its CSS file

Normally, I would be perfectly happy with this - except the view-source protocol doesn't seem to work in Safari (last time I checked). Secondly, I got to thinking - it sure would be nice to have a Servlet (or some other technology) that would read in a file and spit out it's contents with syntax highlighting. This is to say that you'd see in your browser what you see in your editor (i.e. BBEdit, HomeSite, Eclipse, etc.).

The ideal tool would allow me to pass in a URL to a file, and it would spit out an HTML version of that file, complete with syntax highlighting. It'd be similar to Java2HTML, but it would allow HTML, JavaScript, Java, CSS and JSP. I noticed that it might be possible to generate HTML from Java using Java2HTML on the fly, but that only covers one file type. Another option is to instruct documentation readers to change their view-source editor to be their favorite editor.

Has anyone seen such a tool? It sure would be sweet for writing better and more readable documentation for web developers.

Posted in Java at Nov 19 2003, 08:51:19 AM MST 6 Comments