JungleDisk and Amazon S3

October 4th, 2008

In my move to Ubuntu Linux as my desktop I lost my existing desktop backup solution (www.backupmybusiness.com) as it didn’t run on Linux.  I must say that I wasn’t super thrilled with backupmybusiness as it wasn’t as intuitive as I would like and it ran about $50/month for a *single* user/desktop.

So that let me on a hunt for something that would work well for Ubuntu (non-intrusive, inexpensive remote storage, runs on all platforms KrengelTech supports [Mac/Windows/Linux], easy to use for both geeks and non-geeks).  That led me to JungleDisk which I have researched for a couple months and have been a full-time user for about 1 month.  I must say that it meets all the criteria I have laid out and does it very well (or at least I have zero complaints to date).  JungleDisk uses Amazon’s S3 “data storage cloud” to sync a folder on your HD to Amazon.  Note that Amazon themselves don’t really offer any real user interface to their service and instead rely entirely on third parties, like JungleDisk, to develop user GUI clients to interface with their API set (which seems like a good idea to me).  The cool thing is that JungleDisk is VERY reasonable with a one-time $20 fee for a license that can be used for a single Amazon S3 account.  The way my workgroup organized ourselves is we have a single S3 account and everyone has their own password protected “bucket” within that account.  That means it was $20 for multiple staff members to have JungleDisk and the Amazon S3 service is pay-as-you-go and that is probably running around $50/month for ALL of the groups data needs!  The cool thing is that Amazon has a price calculator so you can estimate very close to what you will need for storage and what it will cost you.

Let me lay out a scenario for a company of 10 to 12 people and what their needs would entail. Note that after your initial push of data from your HD to Amazon there won’t be as much data going in and out, and instead there will be more query requests to check file timestamps to see if a file has changed on your HD and whether it should be transmitted to AmazonS3 (that’s where the 2 million number comes into play).

Storage: 150GB

Data Transfer-in: 30GB

Data Transfer-out: 30GB

PUT/LIST Requests: 2,000,000

Other requests: 2,000,000

Total cost for storage and bandwidth: $52.60

My approach for how I made this work on my desktop is to have a folder named “sync” that I put anything in that I want backed up and I just have JungleDisk backup that folder.  The cool thing is that you can schedule JungleDisk to run at practically anytime so it doesn’t interrupt your daily work.  I have mine backup twice a day - once in the early morning and once immediately when I am done with work for the day.

One of my friends, Mike Wills, has tried the Amazon S3 service and says there have been outages in the past for an hour at a time, so I guess your milage may vary (though I haven’t experienced that).  In the end I just want my data in a safe place, and if my internet goes down once a month (which is does because I am in a newer development with construction crews constantly “cutting the wire”) it is OK because my backup with just run an hour later.

On a final point, what do people think of cloud computing?  I think it is safe enough for the SOHO (Small Office/Home Office) arena, but what about bigger businesses?  Obviously huge enterprises are embracing SaaS (Software as a Service) though things like Salesforce.com and that isn’t on their network to easily control.

Here is an interesting blog posting by Chris Maxcer:

http://blogs.systeminetwork.com/isnblogs/maxedout/2008/09/top_ten_it_problems_we_dont_ha.html

I must say that most of the list, per my experience, is pretty accurate.  Obviously everyone has differing opinions and experiences but I think it is safe to say that a solid OS with an integrated DB and native/integrated ILE environment for a business language (i.e. RPG/CL) is the place to be for the next generation of computing (let alone yesterday’s generation of computing).  The IT community is going through some significant growth pains right now with trying to one-up each other with an attractive/efficient UI and totally dismissing many other aspects of an applications life-cycle.  Once the growth slows and people look at their stretch marks it will be interesting to hear the confessions.  “I thought I couldn’t go wrong with a company as big as Microsoft” or “We already had IBM in-house with OS400/RPG/DB2 so I didn’t think their recommendation of adopting a 100% Java front end would ever be a wrong decision” (Java=EGL).

Yep, you read that right. I ventured into uncharted territories writing a training course and loved every minute of it - well, most of it anyway. Writing a training course is like writing 60 articles on the same subject in a fraction of the time.

The training course is titled “XML Web Services for RPG Programmers” and is being published by the Rochester Initiative (a.k.a www.Lab400.com).  My goal for the course was to provide very practical training for RPG developers to quickly and tangibly learn about the XML Web Service technology phenomenon.  I focused on real world best practices that I have encountered over the years with RPG-XML Suite (www.rpg-xml.com) and cause the reader to get their hands dirty (in a good way ;-) by doing labs and exercises.  There’s a lot an RPG programmer should know about XML and Web Services, and a lot of stuff that just doesn’t matter that much - I focused on the former and made sure to offer handy tips throughout the course to save the reader countless hours of head scratching.

You can buy a copy of the training course at both www.lab400.com and www.rpg-xml.com, but if you learn about the course here please buy it from the latter link as that will allow me to have a greater percentage of the sale.  I do realize the training course is more expensive than what one would normally pay for a “book”, but please realize this is the same course work I would take with me to on-site training of which I charge MUCH more for.

You can get a better idea of of what is covered in the course by heading over to www.xml4rpg.com (the site specifically created for this training course) and reviewing the table of contents (or just click here).

History

I started on it in late June of 2007 with a goal to have it completed by Sept 1st.  I *thought* that date might be a possibility based on the fact that I live and breathe the subject every day for a number of years now, and have also written about the subject many times over.  Needless to say I missed that deadline and also the next I set for Oct.  I had to put the course writing more or less on the shelf for a couple months because of the busy traveling/conference/speaking schedule I had (8 travel dates in 7 months from Oct 2007 to May 2008).  Not to mention my wife was pregnant with our fourth child (yeah, I am working on being a better father/husband and the process of writing this course has taught me a lot about that).

Thanks to those that have already purchased the training course and please let me know if you have any questions concerning it.  Like it says in the training course you can email me questions at aaronbartell at mowyourlawn dot com.

To wrap up this post I would like to thank Rochester Initiative for embracing me on this venture and I look forward to writing another piece of work which I have started brainstorming already!  :-)

Bearded man

September 15th, 2008

I work from home and when I have no conferences to speak at or trade shows to attend I “let myself go”.  This might be synonymous to a woman not taking a curling iron withBearded Man her camping.  For me it means I *try* to grow a beard.  I just came accross this picture again on my facebook page (my sister-in-law took it I believe).  Now for most men having a beard means “I didn’t shave this week”, but for me it means “I didn’t shave for the past two months”.  It took two months to grow enough beard to cover the spots where “no beard has gone before”.  Note also that the prime time to grow a beard is when the wife is pregnant because she will want nothing to do with anything that could some how in any way produce another pregnancy (i.e. kissing on the lips of a bearded man) :-)  Needless to say this was last year while my wife was about 7 months prego. Having a beard actually makes me look like I am in my thirties though, so maybe it will come back this year in a more “trimmed” form.

If you have a picture of “letting yourself go” please send it to me and I will add it so we can form community around the subject matter :-)

Final question, is it vain to post pictures of yourself on your own blog?  Hmmm… I will have to ponder that over lunch.

Posted in personal | 5 Comments »

Hi all,

There was a recent discussion on RPG400-L (midrange.com) where a new open source file encapsulation utility was introduced (thread link).  I will hopefully be able to put up a dedicated page in the future, but for now a blog entry will have to do.

The authors of this tool are Kurt Anderson and Kurt Braman.   You can download the free/open-source tool at the link below (note I will be adding updates as Kurt sends them to me):

Version 1.10 (2008-09-11): http://mowyourlawn.com/files/file_encap_v5r3_release_1.10.zip

Version 1.00 (2008-09-10): http://mowyourlawn.com/files/file_encap_v5r3_release_1.00.zip

If you have questions please email “kurt dot j dot anderson at gmail dot com“.  Or you can put a comment on this blog posting and I will relay to Kurt.

Given the recent announcements of open sourced AS400 solutions it feels like that concept is finally taking off in a bigger way.  This is great as it will only produce good things for the community, but is it too little too late with things like EGL being pushed by IBM?

Starting/Stopping Tomcat on AS400

September 9th, 2008

I run Tomcat on my V5R3 AS400 (aka IBMi as of late) and I have to re-start the thing so seldom that I forget what commands need to be run.  This blog is my way of putting the startup/shutdown practices in a place I will always remember.  Below are the two commands I use to startup and stop the Tomcat server.

SBMJOB CMD(QSH CMD(’/java/tomcat6/bin/startup.sh’))
SBMJOB CMD(QSH CMD(’/java/tomcat6/bin/shutdown.sh’))

Below is what the job looks like in WRKACTJOB:


Subsystem/Job  User        Type  CPU %  Function        Status
QBASE          QSYS        SBS      .0                   DEQW
QP0ZSPWT     AARON       BCI      .0  JVM-org.apache   TIMW

Happy Tomcat day to you!

Posted in web, java, iseries | No Comments »

This morning I was pounding out some RPG code in WDSC and I was getting plain old annoyed that VirtualBox (where I run my XP instance on my Ubuntu Desktop) was taking up a nice chunk of real estate at the top and bottom because of menu and status bars.  I really enjoy having multiple members and views open in WDSC (as you can see from the screen shot) so anytime I can get rid of unnecessary parts it is a good thing.

I did some searching around and found that people have been recommending the following:

VBoxManage setextradata global GUI/Customizations noMenuBar,noStatusBar

The only problem is that I had no idea what I was supposed to do with this information as there wasn’t a place in the GUI VirtualBox admin that allows for entering “free form config statements”.  So my next logical choice was to enter it into the linux Terminal.  After entering the above “VBoxManage …” statement nothing happened.  I then tried restarting my VirtualBox instance and THAT did the trick.

I am hoping that in the next version they have “coherence” mode like Apple (and now VMWare I believe) have. This would make it so it appears that WDSC is actually running right on your Linux desktop.

Just curious, has my tips on Linux Desktop for the AS400 crowd been any use?  Is anybody considering trying it out now that they have seen it can be done with relative ease?


I must say it is amazing what they can put together these days for a very small price.  A company named HiVision (China I believe) recently released a laptop that you can buy for $98 and it allows you to have a Linux of WinCE OS along with WiFi (and FireFox) along with a bunch of other applications.  You can check out a video at the following URL: http://techvideoblog.com/ifa/98-linux-laptop-the-hivision-mininote

I am tempted to buy one for novelty sake and to have something in the kitchen for looking up recipes because I cook so much ;-)  This would also make a great tool to have “in the can” so a guy can do his daily reading.  Actually, they should just start mounting them on public bathroom stall doors.  Come to think of it, why don’t they have ads on the inside of stall doors?  What else would a guy be doing for 15 minutes other than stare at an ad.  Well, I am digressing now.  Just go buy a laptop and put it in your bathroom.

ITJungle had a story in today’s email that talked about getting Jetty up and running on our beloved AS400.  I wanted to mention it here because I believe this is a solid alternative to Websphere Application Server (WAS) from IBM and it was on my TODO list to “port” to the AS400; so I guess now it is off my list of things to do :-)  My traditional Java app server on the AS400 is still Tomcat because it is also a very small foot print and is used by the vast majority of Java web developers (so support is excellent).

You can read the article here: http://www.itjungle.com/fhg/fhg082708-story02.html

The other thing I noticed is that the author is using what appears to be XUbuntu which is a flavor of the same Linux OS I use.  This excites me greatly because I think the “free” desktop is rising into power and will give consumers a new and solid choice moving forward.

The other day on WEB400-L (midrange.com) Mr. Anderson mentioned that he saw my name in the JavaServer Faces: The Complete Reference book written by Ed Burns (Senior Staff Engineer, Web Tier Architect and Co-Specification Lead for JavaServer Faces Technology, Sun Microsystems, Inc.).  I had completely forgotten that about 3 or 4 years ago he had emailed me to ask if he could use my approach to protecting pages with a login in his upcoming book.

Excitement mounted as I immediately went out to Amazon to see if I could find it in the “free” pages they sometimes let you view, but I couldn’t find it.   Because having my name next to those like Ed Burns and Craig McClanahan is so exciting I decided to buy myself a copy to verify if it was in fact true.   Sure enough, he made sure to give me credit for the PhaseListener idea I had.  Click on the links below to see scanned images:

Reference 1 and Reference 2

Oh how delightfully exciting!  Maybe Ed Burns and I will sit down to a bowl of peanuts and sip tea over a discussion about 5250/RPG vs. JSF/Java some day:-)  I will show him how successful software stacks from days gone by have been.

BTW, if you want to see what I actually did you can go to my original blog post from 2005: http://mowyourlawn.com/blog/?p=6

I showed my wife the book, telling her my name was printed in it. She tried to match my excitement but it was quite evident she had no clue who Ed Burns was, or JSF, or what a PhaseListener was - but she played along anyways :-)

On final note, everyone should go out and buy this book!  Click here

Posted in java | No Comments »