What’s new in Eclipse Juno?

juno-iconFinally got around to installing Eclipse Juno. It has the long anticipated E4 modules that I was playing with a couple of years ago. Check out the E4 page to learn about the underlying SDK.

First off, it has a new shiny logo (on the right) and a pretty cool looking splash screen, see below.

I was able to simply download the zip file and run it! I installed the 64bit for Java EE Developers, check out the page here. You have to love that install model – so simple. I even loaded my older workspaces and everything “just worked”. The entire UI has pretty much been revamped with a lot of little goodies spread throughout. Here is a list of some of my favorite features:

  • The new UI
  • Multi-drag sash
  • Detached Editors
  • Flexible part layout – You can now mix views and editors!
  • The common event bus – very cool, check out the plugin page for “what’s new”. You can also check out the new event model here.
  • Trim styling, since the UI is based on CSS, you can do some pretty slick things now.

Check out the new splash screen:

juno-splash

Why LinkedIn should be worth more than Facebook

It’s an age-old adage - Business vs Pleasure.

In a world where athletes make millions and the average business person makes less than $100K it is hard to argue that a market designed for entertainment isn’t big business. However, the customers are clearly in it for pleasure. This is why Facebook on paper is more valuable than LinkedIn – how can you argue with almost a billion users? LinkedIn, however, has over 200 million “business users” and the entire focus of LinkedIn is to “link” you with other business people.

Continue reading

Gamification for coders, how cool would this be?

After some dialog with Facebook friends I thought it would be entertaining to write this post. Imagine an extension to Eclipse that connects to a leader board where you can see what “badges” coders are awarded through daily coding. While this is just for fun, I actually think this could end up being valuable in the end. Similar to the way people +1 your skills on LinkedIn, this could give anyone a very good idea of your skills.

Continue reading

Eclipse SWT ImageData to the rescue for image resizing!

A little side project I have here at work has taken a life on of its own. Most recently with the launch of the new Aurora storefront I once again enhanced an internal tool to automatically size product images to adhere to the size requirements for the store. I ended up using Eclipses SWT (The Standard Widget Toolkit) that comes with Eclipse to do this. What I wanted to share today was how easy this was using the SWT API’s.

Continue reading

Using the XPath API to figure out my stats

One major problem I have with base WordPress is while it does a good job giving you stats around views (the number of hits you get per post) it does not do a good job for post counts. In the previous post I had to create a chart that showed how many blog posts I wrote in the months and years past. I am sure there is a plugin out there for this so if you know of one please mention it in the comments!

Continue reading

Work life balance and my current side project

After reading this blog post I realized I am very similar in mindset as the author. I pretty much always have a side project, whether it is for my real job or one of my hobby projects I have written about on this blog. I do think the “best” employees in a technical role are the ones who are always playing. Playing with technology, concepts, API’s etc. The idea is the breadth of the individual grows and has ancillary benefit to their primary job. This has certainly been true for me throughout my entire career.

I remember I was in a client meeting and they expressed the desire to use Drupal as a content management. Because of my several side projects with Drupal, going through several versions of the system, and knowing in depth what it can and can’t do I was very prepared to argue both for and against the idea.

My latest project is something that has also had great benefit in my current job – mainly because I knew there was “a better way” to do this when I started creating demos. I started a project called PET (product extractor tool) that can pull products from an existing web site and then import those products, images, prices, etc into a WebSphere Commerce database. This allows us to create proof of concepts for customers using a familiar product set, product attributes, and terminology in scenarios the customer can understand (ie. speak their language). Prior to PET it could take days if not weeks creating products and all of the surrounding data around them – it really depended how detailed your scenarios were. A heavy focus in the commerce space is navigation and specifically faceted navigation (those options on retail sites down the left that let you narrow down your search results). As you can imagine, creating a full product set with many attributes could be daunting. Not to mention price lists and then inventory – if you have to show that.

I have recently modified the tool to export a set of XML files for Sterling Order Management. This means the same PET model can now be used for both WebSphere Commerce and Order Management – essentially making integrated proof of concepts between the two systems seamless (at least that is the current theory). I am still working on it but it is getting there. Because I used object oriented programming I simply use the same object model PET built from the HTML and pipe that model out as XML versus comma delimited files.

I still have a bit to go with this tool but the point of this post is I am now getting extremely familiar with the Sterling Order Management side of the equation. Diving on the underlying data model and the service API’s to get information in and out of the system.

Oldy but goody article: The Java XPath API

If you Google “Java XPath” this is one of the first articles returned. Clear and concise explanation for how to use the API:

XPath expressions are much easier to write than detailed Document Object Model (DOM) navigation code. When you need to extract information from an XML document, the quickest and simplest way is to embed an XPath expression inside your Java program. Java 5 introduces the javax.xml.xpath package, an XML object-model independent library for querying documents with XPath.

via The Java XPath API.

Using Tweet Effect to master Twitter

I use Twitter to primarily promote and talk about work related topics – Eclipse, Commerce, Java, Dojo, etc and have noticed I get 1-3 new followers a day but I also noticed my followers count never really grew much. So either these were people who followed me and then stopped following me or I was also losing followers at the same rate.

Welcome Tweet Effect.

Tweet Effect let’s you see when people follow and stop following you. You don’t get Twitter Id’s but you do get to see what Tweets win and lose followers. Check it out, the data is pretty interesting.

Symantec C++

Long ago on a computer, almost two decades ago, I used the Symantec C++ compiler. I only made it through version 6 and 7 and eventually moved on to Microsoft C++. The Symantec IDE was way ahead of its time and at first using MSDEV was a struggle. Today, MSDEV is arguably one of the best IDE’s. Why am I writing about this? I was cleaning out my old software CD’s and I must have had a dozen copies of the compiler because I was on the subscription model. Made me think how far IDE’s have come over the past 20 years. Comparing that software to Eclipse is almost laughable. Looks like I should also get rid of about 30 books on software development – most of which are totally out of date, with only a few keepers.

Makes me also think what software we use today will be laughable in twenty years…

Will Java 8 bring in OSGI?

One of the big moves in the industry is to the cloud and many have already begun talking about what will the cloud mean to Java. As outlined in Joab Jacksons article about Java 8, Java 8 gears up for the cloud, making Java modular is a must have. As many IBM server technologies like Notes Domino and the Notes client already have OSGI built into their stack, this would be a great move if Java 8 included OSGI.

One effort, Project Jigsaw, has been working on this goal. When Sun Microsystems controlled Java (Oracle purchased Sun in 2010), that company’s engineers preferred Jigsaw over another approach, OSGi (Open Services Gateway initiative), overseen by the OSGI initiative.