<< Previous | Home

Snowmageddon it - Day 2

Looks like a couple more inches fell last night. We're upto almost a foot now methinks. Here's a couple of snapshots. Time to stay indoors, drink hot drinks and prep for that major software release tomorrow :)

 

 

Snowmageddon it!

Day 1 of the snowmageddon. Around 8" so far outside with more expected tomorrow. Supposed to be as bad as '96 - I remember snow drifts as tall as the house back then when we lived further up north :)

This is what the yard looks like so far. Let's see how much gets dumped tomorrow. As Def Leppard would say 'Snowmageddon it!'

Continuous Delivery

We practice Continous Delivery at Dynacron. That's the main reason why we've been able to push out a lot of new functionality for the last few months at a major local healthcare customer at a steady clip via a fairly automated deployment process which enables deployments anytime.

Dynacron has a free seminar if you're interested in learning more:

http://www.dynacrongroup.com/2012/01/seminar-292012-introduction-to-continuous-delivery/

 

TeamCity Eclipse plug-in and remote runs

We've been using TeamCity at work for a while now and it's working out as well as Hudson, etc. It has some really nifty integration features available via an eclipse plugin ( netbeans, idea, etc are also supported I believe). Love the remote run functionality! 

http://www.jetbrains.com/teamcity/features/continuous_integration.html

 

That's why I love her!

Happy 2012!

Happy New Year!!!

I hope the new year brings you lots of joy & happiness! 2011 certainly brought us a lovely bundle of joy =)

Baby

 

JavaZone X : The Streaming

awesome geeky video! :)

http://www.youtube.com/watch?v=5U1_KW6ww7Y

 

back to the regularly scheduled programming …

boy the last few months have been a blur! baby + work == no time for other things. It's been a very busy & productive year so far. Gonna try to find the time to post random things on here.

Speaking of which, read a really cool book recently - Rogue Warrior, who was the founder of seal team 6.

http://goo.gl/6L6fP

 

Interesting new Java CMS

http://www.jease.org/

I should look into it one of these days. Hopefully it's better than http://www.opencms.org/ for which it was really hard to find documentation and expertise when I worked with OpenCMS.

 

Excellent article on memory leaks

Read an excellent article on memory leaks in Java. Yes Toto, Java can have memory leaks even though it has GC.

http://blog.dynatrace.com/2011/04/20/the-top-java-memory-problems-part-1/

I've been dealing with the PermGen issues lately. It's quite interesting how a couple of wars with each containing a spring stack & a couple of other libraries thrown in can very quickly cause PermGen issues.

 

Jython, SSH etc etc

I am doing some automation stuff these days. This involves remotely interacting with servers via SSH. Ideally I would like to automate some of the processes so I was looking around for ways of doing that with Python or Java.

First I looked into Python which appears to have a couple of solutions:
http://wiki.python.org/moin/SecureShell

kinda banged my head against setting up the various libs before I gave up. So I looked into the Java alternatives. The best options appear to be:

  1. http://www.jcraft.com/jsch/ - popular but docs are a little hard to find/read
  2. http://www.ganymed.ethz.ch/ssh2/ - better docs than jsch

So I decided to download my favorite environment for playing around with Java - jython and was up & running a cmd on a remote box in around 5 mins and piping it's output.

While I agree that a dev is most productive with the tools that the person is most familiar with, once again I find jython to be quite awesome when it comes to just trying out a library.

There's a very nice plugin for Eclipse too. 

 

Sometimes IE just makes you wanna …

… go like Xena the warrior princess - IEIEIEIEIEEIEIEIEIEIEIE!

It took some really nifty but tricky debugging to determine that if you have a flash embedded within an HTML page which is hosted on a different server from your HTML content, IE will send the site which hosts the flash content in the HTTP 'REFERER' header rather than the site serving up the HTML which contains the flash content. Aaarrghhhh! Why doesn't IE follow the standard: http://en.wikipedia.org/wiki/HTTP_referrer

grumble grumble .. another evening wasted on browser specific inconsistencies :(

 

Change mysql root password

fyi, in case you need to change the root password for your mysql database ( such as when you get a dump of test data for example):

http://www.cyberciti.biz/tips/recover-mysql-root-password.html

 

Widgetbox

I have to make a special mention of this neat little tool called Widgetbox. It lets you easily create redistributable widgets for lots of custom sites like facebook, igoogle, etc apart from plain old HTML/flash widgets. I am leveraging it to send folks who use these widgets to landing pages within a web application via simple HTTP services in one of the projects that I am working on. Works like a charm and integrates quite nicely so props to the Widgetbox guys.

 

Tips for Bash power users

Bashy folks might find this useful :)

http://www.tuxradar.com/content/bash-tips-power-users 

 

getting Chrome to play nice with bblean

So I use a *nix style windows shell geared more towards power users called bblean. One of the features it provides is the ability to shade windows ala *nix window managers. It does this by overriding the style for the title bar for all the windows. This was causing a problem with Chrome since chrome draws it's own title bar replacement ( tabs in this case). It was really annoying.

Well, it turns out that this has been solved. Short answer is: blackbox -> bbleanskin -> Edit Exclusions and then just add 'chrome.exe' to the list.

http://code.google.com/p/chromium/issues/detail?id=13766

very cool! 

 

MigLayout

I've been playing with Swing lately. The layout managers are quite a challenge and a UI with any kind of complexity beyond simple things quickly degenerates into gobs of unmaintainable code. It's no wonder that frustrated users usually end up using a gui/code generation tool. I generally prefer hand written code or declarative markup for UIs.

So if you're sick of laying out components in swing by hand, take a look at the MigLayout layout manager. It will solve all your problems.

No wonder it's item #3 in the list of most requested RFEs for java.

 

Loins of Punjab

Watched Loins of Punjab with the folks the other day - hilarious movie with a very cool ending! Recommended :)

Enjoy this youtube music video with scenes from the movie.

 

Why I prefer to develop in Linux instead of Windows

I had been asked to put together a list of reasons why I would prefer to use a Linux desktop rather than Windows at work ( we currently develop on Windows and deploy to RHEL). I put together a couple of reasons; you may find them handy to convince folks too :)

  1. extensive developer toolchain built into the OS. Merge, diff, grep, svn, git etc etc all built into the OS. On windows I have to download and install freeware/open source programs to fill in that functionality gap.
  2. more powerful desktop user interface. I can setup keystroke shortcuts to commonly used applications, virtual desktop support is built in, scp/ssh support is built in. Again, I can install freeware/open source programs to fill in that functionality gap but it's all built into linux.
  3. handles load better. I have found my windows box to become somewhat unmanageble when I fire up a couple of programs which are memory hogs. In fact, I have had to cold boot windows because the UI becomes unresponsive. As a result of this I actually ended up corrupting my hard drive a while back and IT spent 2 days fixing it ( thankfully it was fixed!). I have rarely seen this on Linux. Even when the UI is non-responsive you can usually just kill the Xwindows daemon and restart it or access the box remotely via ssh and ask it to do an orderly reboot.
  4. interoperability with Outlook. I have IMAP working with my home email client on linux and activesync working with my cell-phone to sync with emails and calendar info. So there is no reason why I shouldn't be able to use linux with exchange in place of outlook.
  5. our production environment runs linux. This is an important albiet subtle point. Although Java runs in a cross platform manner, there are still OS specific traps that programmers can fall into ( for example, using files on the filesystem) which don't manifest themselves until we are ready to run the code on the production environment. That is the reason we have the test/integration environments. It would be even better to catch them upstream on the linux dev box.
  6. the current solution at work for running linux consists of a production vmware image for devs to run their stuff on. Something's better than nothing but there is the overhead of going through the OS translation layer since it runs on top of Windows. I would much rather run on linux directly and use Windows within a VM if I need to.