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 "la blue girl episodesorgasm denial web tease". 1,368 entries found.

You can also try this same search on Google.

Learn about WebWork 2.2 and Tapestry 4.0 via Podcasts

podcastI've said in the past that Podcasts are boring. I still think this is true for the most part, but that's largely because most of them aren't appealing to me. However, this week I've found a couple of good ones. Tapestry 4.0 and WebWork 2.2 have recently been released, and now you can listen to interviews with both project's primary developers: Patrick Lightbody of WebWork and Howard Lewis Ship of Tapestry/Hivemind. The easiest way I've found to subscribe and listen to podcasts is to download iTunes. You also may want to checkout The Java Podcasters article on ONJava.com.

I hope to upgrade both Equinox and AppFuse to these releases in the near future, I just need to find the time. I also hope to change the default web framework in AppFuse to Struts Action 2 as part of AppFuse 2.0. This will allow us to ditch Struts and WebWork and only support 4 web frameworks (SA2, Spring MVC, Tapestry and JSF).

Posted in Java at Jan 26 2006, 08:22:02 AM MST 4 Comments

Does JPOX suck?

There's an ongoing effort in Roller to migrate from Hibernate to JDO. Mostly, this is due to Apache's silly rule about no L/GPL dependencies - even if they're downloaded separately. I think this is a valiant effort, especially if JDO performs as well as Hibernate.

However, it was interesting to see the following message on the mailing list this morning:

i have experience using jdo, and jpox in particular, with a commercial product. first, you probably already know this, but jdo is dead (from a spec perspective anyway). it will be phased out in favor of ejb3 persistence. maybe that transition will be graceful, maybe not. i see jpox has ejb3 on their roadmap, but not sure what that means.

second, jpox has really, very atrocious performance issues. the jpox folks admit that performance is a low priority, as they are an ri. if someone wants the details on this, i can dig them up.

Interestingly enough, this message is from a Sun employee. It's interesting to hear someone from Sun say that "jdo is dead". What are you thoughts? Should Roller change their persistence backend just to satisfy Apache?

Of course, now you'll tell me your favorite Apache-licensed persistence framework and why it's worked so well for you. The real question is - are you willing to re-write Roller's backend using it? ;-)

Posted in Java at Jan 25 2006, 10:57:56 AM MST 31 Comments

Spring Workshops from Virtuas

I'm pleased to announce that my company, Virtuas, has decided to start offering public workshops for many prominent open source projects. These include Spring, Geronimo, Tomcat, Hibernate and JSF/MyFaces.

I'll be teaching the first Spring course in Denver February 21st - 24th, followed by one in Boston in mid-March. It should be a fun class, especially since I'm adding a bunch of stuff regarding Spring 2.0. Since I know you're going to ask the price -- and it's not posted on virtuas.com -- it's $2,495 per person for 1-4 people from the same company/group/etc., $1,995 per person for five or more people.

In other Virtuas news, we've recently signed partnership agreements with IBM and Covalent. We also re-worked our site with Andreas Viklund's "andreas08" theme from Open Source Web Design. Thanks to the power of Drupal, all we had to do to change the whole site was modify one PHP template and one CSS file. Thanks to both Andreas and Drupal for vastly simplifying our new look-n-feel.

Update: It looks like Andreas's theme has been made into a Drupal theme. Nice.

Posted in Java at Jan 24 2006, 05:06:14 PM MST 10 Comments

Lightbox JS

Lightbox JS is a simple, unobtrusive script used to to overlay images on the current page. It's a snap to setup and works on all modern browsers. I dig it.

Posted in The Web at Jan 10 2006, 10:50:41 AM MST 5 Comments

Media Center and Skype 2.0

Ever since we got our new HP Pavilion, I've been improving it and my "home office" setup as well. First off, I bought 2GB of RAM to boost it up to 3GB. Then I got a DVI KVM Switch, so I could plug Windows and Linux into the same KVM setup. Installing OpenSuse wasn't too hard, but configuring CUPS and Samba and adding a 2nd drive took a bit of wrestling. The best part, however, has been yesterday and today.

Skype Julie got everyone in our families new webcams for Christmas. For the past week or so, we've been trying to get them to work. I've had an iSight for almost a year, and I've never been able to get it to work when talking with my parents. This time was no different, but we did get the Mac working with Yahoo Messenger. This led to getting Yahoo working on my Windows box, but the sound sucked and the video wasn't that good. I couldn't get any other IM clients to work either. Then I remembered Skype and thought "they must have video by now". Sure 'nuff, when I checked a few days ago, they had Skype 2.0 with video support. It worked great right away and I had a great "talk" with my parents last night.

Tonight, I got my sister hooked up on Skype and we talked for a bit. She's currently having lots of computer issues and Skype crashes (and quits working altogether) after working fine for about a minute. My dad had a few issues with his machine too - mainly due to Skype tacking out his 1GHz/1GB machine. Bottom line: Skype with Video works great if you have a new machine with plenty o' memory.

Media Center Lastly, I received a TV Tuner tonight from Amazon - thanks to a JavaLobby gift certificate (thanks guys!) Note that you need a card with "MCE" in the model name if you want it to work with Media Center. I plugged it in, configured it, and now I'm watching Law & Order while typing this. I setup Conan to record every night and life is good. It's a pretty cool setup - now I just need a new dual-core Intel-based PowerBook to get the best of everything. ;-)

Posted in The Web at Jan 09 2006, 10:45:55 PM MST Add a Comment

J3Unit

J3Unit Over the weekend, I learned about J3Unit - a new object oriented JavaScript testing framework.

J3Unit is an object-oriented unit testing framework for JavaScript. J3Unit runs JavaScript tests directly in the web browser and can be automated using JUnit and Jetty. J3Unit builds on previous work by JSUnit and Script.aculo.us to provide a better way to automate JavaScript unit tests. Object-oriented JavaScript unit tests are written using the Script.aculo.us Test.Unit.Runner object, which is in turn built upon the prototype JavaScript library.

J3Unit has 3 modes of operation: Static Mode, Local Browser Mode, and Remote Browser Mode

To me, this looks similar to Selenium. I'd definitely like to explore using this package or Selenium in AppFuse.

Currently, AppFuse uses Canoo WebTest, which is based on HtmlUnit. The current version of HtmlUnit doesn't support Prototype, or any libraries that depend on it. The good news is "This will be quite simple to fix".

Posted in Java at Jan 09 2006, 05:41:42 AM MST 2 Comments

Improving the Maven Repository

Brett Porter provides a few steps on how you can help improve the Maven repository. My advice? Convert your project to use Maven 2 as an experiment. That's what I did with Equinox 1.5. In the process I found 28 issues with POMs at ibiblio. If you're using Ant, you can use Maven 2's Ant Tasks to download your dependencies w/o going "whole hog" and converting everything to M2.

Yes, this is a somewhat twisted attempt to convince you to endure the same pain I went through. The best and worst part of Maven 2 is its transitive dependencies. If they can all be updated to be accurate by the project owner's - the problem will be solved. But how do you convince project owner's to do that? I wonder how good Ivy's metadata is?

Why is this whole debate important to you? Because Ant 1.7 is (supposedly) going to have a dependency download mechanism. It's likely you'll use it because it is a nice convenience. Steve Loughran is one of Ant's primary developers and he has this to say:

I do find the m2 tasks and repository hard to work with, and am debating a quick investigation of Ivy. Maybe focusing on one thing -library management- has let them do a better job than trying to be all of a next generation build tool.

The "best dependency downloading tool" debate is heating up. I wonder which one will win Ant Developers over? If it's M2, I can see the Apache folks smiling. However, if it's Ivy - at least we'll know it's not a political decision. It's because it simply does a better job. May the best tool win.

NOTE: I've yet to try Ivy, and don't know if I will. Especially now that I've fixed all the POMs I use at ibiblio.

Posted in Java at Jan 05 2006, 08:12:43 PM MST 9 Comments

OpenSuse 10.0 vs. Ubuntu 5.10

Ever since I got a new HP Pavilion, I've been planning what's next for my Dell Dimension 8300. I decided it's probably best to retire my somewhat hosed Fedora Core 3 box (Dimension 8100) and replace it with a new Linux server. After talking with a good friend, I decided to go with OpenSuse 10.0 or Ubuntu 5.10. Steve was a good enough friend to burn me DVDs of both. Yesterday, I bought a new 160GB hard drive and last night I tried to install Ubuntu. I went w/ Ubuntu b/c Steve tried them both and said he liked Ubuntu a lot better. I've never used Ubuntu, and I have used Suse a fair bit - so I figured I'd try something new.

When I started installing Ubuntu last night, I figured it'd be a breeze. I have a DVI KVM Switch hooked up to a Logitech cordless keyboard/mouse, and Ubuntu immediately recognized them both. However, at 44%, it failed to install gstreamer0.8-jpeg and the installation bailed out. I was able to login to the desktop and (seemingly) get stuff working, but I'm always a bit leary about a failure in the middle of an OS install. After an hour of futzing with it, I tried again and got the same error. Around 1 a.m., I said "screw this" and threw in the Suse DVD.

I had the same good results with Suse, where my keyboard and mouse were recognized. However, when I got prompted for the root password, my keyboard quit working and I was up shit creek. I started the re-install process before going to bed at 2 and picked it up again this afternoon - after a beautiful day of skiing at Copper. I got almost everything working on Suse this afternoon, and just as I was about to call things good - the keyboard problem came back. Pretty disappointing since I'd just gotten my Apple Cinema Display to work.

As I speak, I'm trying Ubuntu again, without the KVM switch. I suspect there's probably a piece of hardware I have that's causing the failure, so hopefully unplugging things will solve the problem. If I don't get it figured out in the next hour or two, I'll probably just go with Suse, setup VNC - and get a wired keyboard for when I need direct access.

24 hours later: It's interesting to see that almost the commentors on this post are recommending Ubuntu. After posting this, and receiving a comment from Brett, I tried the Ubuntu Live DVD. What I found was that Ubuntu recognized my cinema display, but it entered into a non-stop flickering loop that I couldn't solve. Therefore, I threw in the Suse DVD and tried again. This time, Suse recognized everything flawlessly (including my HP OfficeJet G85). So I'm sticking with Suse - mainly because it seems to recognize my cinema display, printer and DVI KVM switch the best. With apt-get working on Suse, it's been a breeze to get everything setup.

Posted in Open Source at Jan 05 2006, 07:22:57 PM MST 26 Comments

Vongo

It's not everyday that the project you've been working on gets announced all over the news (even locally!).

Vongo

It's been a fun project to work on - with some pretty cool technology powering it all.

Posted in Java at Jan 03 2006, 08:48:26 AM MST 27 Comments

Welcome to 2006

Happy New Year everyone! 2006 should be a fun year. My goals? Happiness, Health - both driven from skiing, riding, playing with the kids and enjoying my job. I still can't believe they pay us to do this stuff. ;-)

Here's this site's stats for 2005:

Usage summary for www.raibledesigns.com

Summary by Month
Month Daily Avg Monthly Totals
Hits Files Pages Visits Sites KBytes Visits Pages Files Hits
Dec 2005 119264 74610 55759 15309 79374 31394669 459273 1672794 2238313 3577920
Nov 2005 129880 84543 49704 16179 83835 32018723 485388 1491145 2536299 3896414
Oct 2005 131901 82994 40667 15612 83189 31356652 484000 1260688 2572831 4088935
Sep 2005 172824 76604 39068 15540 78205 28408092 466208 1172056 2298141 5184735
Aug 2005 103628 70134 35565 13409 78966 28851892 415689 1102523 2174160 3212489
Jul 2005 99795 68139 40701 12741 76861 65666780 394998 1261744 2112311 3093646
Jun 2005 109682 74020 34614 12625 81955 29010554 378757 1038422 2220610 3290466
May 2005 109034 79885 38253 12285 105956 31142486 380848 1185869 2476438 3380075
Apr 2005 107043 70599 32273 12408 65138 21990095 372247 968207 2117997 3211297
Mar 2005 94572 71213 30085 11532 66829 22698368 357509 932640 2207624 2931733
Feb 2005 78524 57674 27428 9649 51844 15375733 270194 767992 1614896 2198686
Jan 2005 82797 58338 29049 10299 55016 18645468 319269 900548 1808480 2566734
Totals 356559512 4784380 13754628 26378100 40633130

Posted in General at Jan 01 2006, 06:00:54 PM MST 3 Comments