The Isomorphic Blog


Introducing ‘Tahoe’ (Part 1)

The-X-Factor-Blog

We surveyed you (our users) to clarify your UI / UX needs. Some interesting findings were summarized in our ‘User Interface Insights‘ blog.

In our 11 | 6 release, we delivered some of what you asked for such as the ability to resize fonts and ui controls. We also overhauled form controls to match current design trends and take advantage of CSS3 features like box shadows and transitions.

The next phase is coming in 11.1 | 6.1. We’re adding a new skin called Tahoe. As you can see in the sneak peek below, it is flat, square, modern, beautiful … and blue.

Grids

Our grids have gotten more updates than we can list. Some of the highlights are:

  • Flat, square look and feel
  • Modern heading bar, fonts and colors
  • Cool new scroll bars
  • Subtle horizontal and vertical banding to keep data in context (Note: hard to see on screen grabs added to this blog)
  • Flattened icons

New look and feel for sorting, editing and other states:

Grid-Blog-Edit-Sort

New calendar / date picker:

Grid-Blog-Calendar

… and much, much, more that we’ll share in our next post.

Graphs and Charts

With Tahoe, our charts get the modern, flat treatment, too. They’ve also been reformatted to make the legends more readable, separate out the header, and get all wrapped in a tidy container. Here are a few examples:

Blog-AreaChart

Blog-ScrollChart

Blog-ZoomChart

Blog-RadarChart

How to Get the New Skin

For documentation on how to implement Isomorphic SmartClient skins, see below:

Want Isomorphic Consulting to help you? Contact us here. We can do it all, or just give help and direction where needed.

 

More Details on Release 11.1 | 6.1

This is the fourth blog about our upcoming release, 11.1 | 6.1. You can find more information in these previous blogs:

 

*** Remember: Upgrades to 11.1 | 6.1 are FREE to those who have already purchased 11.0 | 6.0. ***

For those not yet on 11.0 | 6.0, upgrade discounts are available and are based on the date of your last license purchase. View our License FAQs for more details. If you would like to upgrade, please contact us.

 

Best,

The Isomorphic Team!

 

 

New Release Preview (Part III)

This is the third post about our upcoming release: SmartClient 11.1 | Smart GWT 6.1. Previous posts can be seen here:

  • Part I – Histogram chart, Selenium image load check, Grid support for auto-sizing to wrapped titles
  • Part II – Scrolling charts, Visual builder DataSource Validators, Ctrl-C / Ctrl-V

 

Here are a few more 11.1 | 6.1 features:

Audio Playback

Use the Sound class to load and play an audio sample. Click the control buttons to play, pause and reset the sample. The progress-bar indicates the current playback position of the sample.

play-pause

Try the live sample here >

Audio Notifications

The Sound class can also add valuable user feedback to an interaction. For example, to draw attention to an error, or inform them that an task was completed successfully.

audionotificationswithspeaker

 

Try the live sample here >

Create any Shape – Keep Built-in Interactivity

With 11.1 | 6.1, you can directly use the underlying HTML5 <canvas> APIs to draw arbitrary shapes, but still use built-in interactivity features like drag and drop and built-in resize knobs.

ezgif-com-gif-maker

Try the live sample here >

More Live 11.1 | 6.1 Samples

Several 11.1 | 6.1 BETA live samples are already available for you to play with. Try them out here.

beta-samples-11-1

 

 

That’s all for now, but much more coming soon!

 

*** Remember: Upgrades to 11.1 | 6.1 are FREE to those who have already purchased 11.0 | 6.0. ***

For those not yet on 11.0 | 6.0, upgrade discounts are available and are based on the date of your last license purchase. View our License FAQs for more details. If you would like to upgrade, please contact us.

 

Best,

The Isomorphic Team!

Our Experience with DevOps

These days, there are numerous conferences, news articles, training courses and discussions going on around DevOps. As I am sure you know, DevOps breaks down barriers between Development, Operations and QA, improving communication & collaboration, all with the goal of releasing higher quality products more frequently.

devops

How we got started

We founded Isomorphic in 1998. Right from the start – probably due to the proximity and small size of our original teams, the need to move fast, and a limited budget – DevOps (although I don’t think it had a name yet) just sort of happened organically. Back then, tools were sorely lacking, so we just developed our own. We’ve been enhancing and adding to them ever since.

We’ve come a long way, baby

Fast forward to today, in Isomorphic we now have:

  • A system that runs tens of thousands of Selenium-based tests for every checkin to source control
    • It compares results to the previous run
    • Sends out notifications if there are any regressions or fixes
  • Various tools for viewing and analyzing such data (eg: what checkin broke this test?).
  • Built a huge range of diagnostics into our software platform.
    • Developers can go to a live site, log in to an Admin Console, and see client- and server-side logs
    • Toggle log levels up and down on the fly
    • Inspect live client or server-side state, and many other things.
  • Continuous deployment so that features can be rolled out quickly
  • Generally able to receive a bug report and turn around a fix in one day, with high confidence that the fix has not introduced any subtle regressions

But of course, we are not stopping here. The idea is to continuously improve.

You already have the tools you need

Many of the tools we use internally in Isomorphic are available in our platform today. For example, check out TestRunner. TestRunner is a key piece of implementing the Continuous Integration methodology. Continuous testing is applied so that regressions are caught immediately. This allows a product or application to be kept continuously at a very high level of quality, allowing for more frequent and predictable releases.

Learn more about TestRunner >

In fact, we have numerous customers that, through the adoption of our tools, are able to continuously and automatically test, analyze, diagnose and deploy the applications they’ve built on our platform.

Want to get started?

Are you trying to get started with DevOps? Do you want to accelerate process implementation? With our expertise in DevOps and with the tools we have developed, we can help you implement test suites and test analysis systems in your applications – just like those we successfully run in Isomorphic today. Contact us for more information.

Contact us for assistance with DevOps >

 

Best,

The Isomorphic Team

Next Release Preview (Part II)

A few weeks ago, we talked about a few features in the upcoming release, SmartClient 11.1 | Smart GWT 6.1. Here are a few more:

 

For When There’s Just Too Much Data … Meet the Scrolling Chart

Sometimes when you try to fit it all on one page, it just becomes unreadable. Labels have to be rotated by 90 degrees because they otherwise won’t fit, and the chart is so squashed up, it is hard to tell one bar from another. Kinda like this …

scrolling-chart

So in 11.1 | 6.1, we are providing more options …

Automatically Expand and Scroll to Show Content

As you can see, the chart below automatically expands horizontally to show content. This is enabled by the autoScrollData property. Automatic expansion can be driven either to fit per-facet-value bar thicknesses specified by defining a getMinClusterSize method for the chart, or by the requirement that all labels fit on the horizontal axis without overlapping

1. Bars All the Same Width

Here, all of the labels fit horizontally, and all the bars are the same size. Scroll horizontally to see more data.

scroll

 

2. Dynamic Bar Thickness

Instead of having all the bars the same width, let the width of each be driven by the length of the corresponding label. This means the labels will be readable, without taking up more horizontal space than is necessary – so less horizontal scrolling. Yay! :) Check it out …

 

 

Dashboard & Tools: Ctrl-C / Ctrl-V

The upcoming release will have built-in copy and paste with keyboard shortcut support, automatically enabled wherever selection is turned on.

View documentation and related APIs here >

 

 

Visual Builder DataSource Validators

With 11.1 | 6.1, powerful functionality is introduced to allow validators to be quickly and easily added to datasource fields in Visual Builder. This feature has a great degree of flexibility, allowing you to specify what type of validator will be applied and under what conditions … and even the error messages that will be displayed. See the simple steps below to set one up.

1. From within Visual Builder, choose to edit a datasource

datasource-validators

 

2. Select the desired field:

selectvalidator

 

3. Click the new Validators button

selectvalidatorbutton

 

4. Select the desired validator type from the list

Choose from: ‘has related record’, ‘integer range’, ‘is one of’, ‘is unique’, ‘matches field’

validator-type

… then enter the required values, including an appropriate error message.

vavlidator-values

 

5a. Specify when the validator should be applied:

Choose Always, or only under specific conditions:

validatorconditions

 

5b. For more complex scenarios, use the Advanced option which allows nested conditions:

advanced-conditions-for-validators

 

As you can see, very easy to use, but very powerful.

 

 

Thanks for reading out blog! Watch this space for more 11.1 | 6.1 features.

 

*** Remember: Upgrades to 11.1 | 6.1 are FREE to those who have already purchased 11.0 | 6.0. ***

For those not yet on 11.0 | 6.0, upgrade discounts are available and are based on the date of your last license purchase. View our License FAQs for more details. If you would like to upgrade, please contact us.

 

Best,

The Isomorphic Team!

Java Ecosystem Insights, Free Cloud Expo Pass … and One More Thing

october-updates

 

Exec Insights on the State of the Java Ecosystem

Tom Smith from DZone recently interviewed Isomorphic CTO, Charles Kendrick, and several other execs, to get insights into the state of the Java ecosystem. Tom’s article was published in Dzone’s Guide to Modern Java. A few of the highlights were:

  • The open source community is driving more innovation than Oracle
  • Java continues to be prevalent in enterprise IT due to the breadth and depth of the ecosystem
  • Java will be prominent in enterprise development far beyond the short term

The entire article is well worth a read. Check it out here (page 42).

 

Get Your Free DevOps Conference Pass

Isomorphic will be talking about how to accelerate the agile development process at the DevOps Conference in Santa Clara, CA, November 1-3. We would love to see you there.

Want a FREE full conference pass? Just follow these steps:

  • Click here
  • Click “Continue” if you are a new user, or log-in if you have already created an account.
  • Once there, Register for Cloud Expo.  Fill out the basic business card questions and then enter isomorphicVIPgold in the Priority Code field to change the price to $0.
  • IMPORTANT: Remember to email jason@isomorphic.com to let us know you are coming!

 

New Skin Coming Soon – ‘Tahoe

We are working hard on a new skin for SmartClient. It’s flat, modern, beautiful, and everything you asked for in the UI survey. You’re gonna love it.

Watch this space for more details.

 

Best,

The Isomorphic Team.

 

Coming Soon: SmartClient 11.1 | Smart GWT 6.1

11-1-6-1banner

It’s time to start talking about our next release, SmartClient 11.1 | Smart GWT 6.1. It is gonna be a good one!

Here are just a few of the features:

#1: Selenium: Easy way to check if images/icons load successfully

You can now use “/imageLoaded” as a manually added suffix for locators that target Img components or other components that show icons (Buttons, Labels, etc) as a means of testing whether the image has been successfully loaded by the browser. For example:

  • //Button[ID=”cssButton”]/imageLoaded
  • //ImgButton[ID=”imgButton”]/imageLoaded
  • //Img[ID=”photo”]/imageLoaded

See our Using Selenium Guide for more info >

#2: grid support for auto-sizing to wrapped header titles

in 11.1 | 6.1, ListGrid fields can auto-fit to a multi-line title as well. See the example below.

autofit-wrapped-columns

  1. The first column auto-fits to its long title (“Flag Thumbnail”).
  2. The second column auto-fits to the data values, so there is extra space after the title.
  3. The user can also perform one time auto-fit of columns at runtime by double-clicking on any header or using the context-menu option.

 

#3 Histogram Chart

Histogram charts show a number of segments for each facet value on the x-axis, one for each legend facet value. However, unlike a column chart, in which each facet only has a length, in a histogram each segment has both a start (A – value property) and end value (B – defined via a metric).

histogram

 

You can see below that as the mouse moves across the various segments, the data values are shown in a hover, and that the segments can overlap each other. The stacking order can be changed through use of an additional metric.

 

ezgif

APIs are also provided so that charts can set their data fill and line color. In the above chart, custom colors are applied via getDataColor(), using a map of the facetValueIds. Border color can also be applied using the new getDataLineColor() API.

 

Watch this space for more 11.1 | 6.1 features.

 

*** Remember: Upgrades to 11.1 | 6.1 are FREE to those who have already purchased 11.0 | 6.0. ***

For those not yet on 11.0 | 6.0, upgrade discounts are available and are based on the date of your last license purchase. View our License FAQs for more details. If you would like to upgrade, please contact us.

 

Thanks as always,

The Isomorphic Team!

 

 

It’s time to de-support some really old stuff

san_francisco_sunset-desupport-2

A couple of times a week I find myself installing updates to one browser or another. Admittedly, I do use FF, Safari, Opera and Chrome. That translates to hundreds of browser versions since SmartClient 8.3 | Smart GWT 3.1 was released in 2012.

With our SmartClient platform, we’re always pushing the boundaries of what web applications can do in the latest browsers. We also support users on older browsers and older versions of SmartClient, but this is a balancing act. We tend to port a lot more fixes to the most recent dot release than to prior releases of the same major version, as it benefits the most users. It therefore makes most sense to always be on our latest release.

SmartClient 8.3 | Smart GWT 3.1, of course, long ago lost official support for major new browser versions. At some point, the time comes where it no longer makes sense to make even more convoluted workarounds to support obsolete browsers, or continue to put effort into very old versions of our software from which most clients have upgraded. We have therefore decided to end-of-life SmartClient 8.3 | Smart GWT 3.1 and earlier releases.

But don’t worry, you have plenty of time:

 

The Best Time to Upgrade

If you are still on 8.3 | 3.1 or earlier, there is no better time than now to upgrade. In the four or so years since the release of SmartClient 8.3 | Smart GWT 3.1, our platform has become faster and much more capable.

Many benefits of the platform will be immediately apparent in your applications on upgrade. For example, the inline operator filters mentioned above will automatically appear in your grids!

Clicking the links below will give you details of each release since SmartClient 8.3 | Smart GWT 3.1. All of these features are available in our latest release (11|6). Now would be an excellent time to start your upgrade project. Contact us to upgrade.

SmartClient | Smart GWT Release Contents
11 | 6          10.1 | 5.1        10 | 5       9.1 | 4.1      9 | 4   

 

We Can Help

Our forums are a good source of info / support when upgrading. If you need assistance, Isomorphic Consulting can align with your needs: We can provide help and direction, upgrade your applications for you, or even perform Application Modernization to help you take advantage of the latest platform capabilities. Just contact us for more info and to discuss your needs.

Thanks!

The Isomorphic Team.

Grid Custom Columns Provide Developer AND End User Productivity

SmartClient’s Grid Custom Columns provide end users with built-in wizards to define:
1. Formula fields that can compute values using other fields
2. Summary fields that can combine other fields with intervening / surrounding text.

Empowering end users with Custom Columns frees-up developers from never ending one-off requests. It also makes end users more productive, getting them the data they need in the format they need it – without being placed in Development’s queue! Basically, everyone is happy!

Custom columns have all the power of regular columns, including sort, filter, export, reorder, resize, freeze / pin, group, export, hiliting, etc.

Want to learn more? Watch this video:

Want to try for yourself? Get hands on experience here.

Thanks for reading!

The Isomorphic Team

DevOps Patterns and Anti-patterns: How to do the Right Thing in the Real World.

RealWorld-text

In DevOps, what patterns lead to success? What are the anti-patterns that should be avoided? Charles Kendrick – CTO here at Isomorphic Software – recently participated in a DevOps power panel at the Cloud Expo in New York. The session was very well attended and incredibly well received. We thought we would share a few of the questions posed to the panel, along with some insights from their responses. Click here for a video of the full session.

Best Practices
Is there a place for best practices in DevOps?

We should not be using the term ‘best practice’. DevOps is a journey – not a destination. It is all about continuous improvement. If you think you know the best way of doing something then you stop trying to improve.

 

DevOps as a Job Title
Should there be a DevOps Manager role in every organization?

There should not be a DevOps Manager role. Of course, we can expect to see the role / skill appear on resumes and in Linkedin. However, the idea of having a single person dictate how DevOps should be done in an organization – except perhaps in a short, transitional position – works against building the necessary collaborative, trusting relationships that are required.

There could be a role such as a DevOps Facilitator, DevOps Guru, that helps build the necessary collaborative, consultative relationships. Regardless of how the philosophy is introduced, everyone has to be thinking this way.

 

Which Methodology?
There are many methodologies such as scrum, agile, kanban, etc. Do you pick one? Use them all together?

DevOps is a journey. Choose your own adventure. Choose your own path of what will work for your organization. Methodologies also do not have to be followed to the letter. They are just guidelines. You can pull from each like a tool box.

For example, some methodologies require the team to beat on a problem with everyone in the room. If you have distributed team, this will not really work for you. Some people also need time to think on their own, so being forced to work together in a room does not get the best out of them. When consensus is forced like this, smart voices often get pushed down.

 

DevOps “Wall of Confusion”
It has been said that there is a wall between Dev and Ops and that causes confusion. This would be an anti-pattern. Is the wall breaking down? Are we getting more collaboration, communication, integration? How do you help break it down?

Looking across organizations, things are improving but it is still a problem. Within an organization, the wall between dev and ops should be broken down very incrementally. Start with small steps. For example, give developers access to performance metrics instead of making them request it. The more dev minded ops people and more ops minded dev people will naturally start to communicate and work together.

 

Click here for a video of the full session.

Enjoy!

 

P.S. We will be presenting in the DevOps Summit @ Cloud Expo in Santa Clara, CA from Tues Nov 1 – Thur Nov 3. If you would like a FULL CONFERENCE FREE PASS, email jason@isomorphic.com and I’ll hook you up.

Have you heard of Adaptive Filtering?

Adaptive filtering helps make your applications run lightening fast, not only on the desktop, but also on tablets and smartphones.

How does it do this? It automatically switches to client-side filtering when the dataset becomes small enough. In doing so, it eliminates up to 90% of the most costly types of server contact (searching through large datasets), dramatically improving responsiveness and scalability.

Want to learn more? Watch this video:

Want to try for yourself? Get hands on experience here.

Thanks for reading!

The Isomorphic Team

Page 1 of 912345»...Last »