5 Simple Techniques to Avoid Bugs While Programming
Programming is an activity that requires a special set of cognitive skills. While the industry has developed processes and tools to ensure the quality of software artifacts, the act of writing code is a craft in itself. Developers pride themselves on the “big picture” results they achieve, but the activity of programming is definitely a humbling experience: it’s easy to introduce bugs, and regardless of whether I catch them right away or later in the pipeline, I hate to be reminded I am inherently flawed and have introduced a defect. For this article, I will focus on simple methods to avoid bugs, not before or after you write code, but while you write that code.
The Right Tools to Develop with the IVAAP Backend SDK
One of the unique features of the IVAAP backend SDK is that you can develop your own data connectors and services with the IDE you are already familiar with. The data backbone of IVAAP is meant to be deployed in a cluster made of multiple nodes for scalability and reliability. However, despite the distributed nature of such a deployment, our SDK requires no particular plugin to compile or execute your code. The tools needed to develop a plugin for IVAAP’s backend are identical to the tools you would need to develop classic Java Servlets: a Java SDK (Oracle, OpenJDK), an IDE (Eclipse, NetBeans) and an application server (Tomcat, Glassfish).
Total to Use INT’s Data Visualization and Analysis Platform and Libraries Software for the Next Five Years
A Brief Demo of Machine Learning Applied to Subsurface Data in the Cloud
Over the last few months, there have been a lot of activities and discussions with upstream majors on how to make subsurface data easier to search and discover and how to automate some of the geophysical and/or petrophysical workflows. This process has typically been very challenging. From a user experience perspective, the ideal scenario would be to do this from one system versus doing this very manually from current siloed applications. We’ve been able to do this successfully here at INT.
How to Empower Developers with à la Carte Deployment in IVAAP Upstream Data Visualization Platform
IVAAP was not just meant to be a web application “built for purpose”—we wanted it to be a platform that customers can extend on their own. With this goal is mind, the first component that we picked for IVAAP’s architecture was a “lookup” system. This system makes IVAAP easy to learn, yet versatile, and devops appreciate that they can leverage it when a fast turnaround is needed.
What We Learned about the Future of NetBeans from the Last 2 Years
It’s been two years since Oracle announced the donation of the NetBeans source code to the Apache software foundation. This move was much more than a licensing change — it was a bit of a new beginning for NetBeans. With the release of NetBeans 10, now is a good time to look back and recognize the changes that this transition to Apache brought.
How Window Synchronization Facilitates Visualization of a Large Number of Datasets
While some customers will use the portability of INTViewer to present their data, others will use INTViewer on a workstation, with multiple monitors. And instead of opening a handful of windows, they will open a few dozen. The typical use case for opening a large number of windows is when you want to monitor the multiple steps of a processing workflow. In such a use case where datasets are compared, it’s important that all visualizations share the same settings. INTViewer makes it really easy to open dozens of datasets at once. You can select a directory and open in one click all the datasets within that directory. But this is not where INTViewer’s productivity stops. Automatic synchronization facilitates the management of all these windows.
Using Scopes in IVAAP: Smart Caching and Other Benefits for Developers
The purpose of IVAAP’s backend is to access data from many data sources and present this data in a unified manner to the IVAAP HTML5 client. Performance is key, and some data stores are faster to access than others. In a web service configuration, a smart caching strategy is required so that the same web/HTTP calls are not made to the same data store twice while a service request is being fulfilled, regardless of its complexity. This is where the concept of scope comes in.
My Experience at INT with IVAAP: A First Look as a Developer
As a new member of the software development team, I had no prior experience with development on IVAAP, INT’s HTML5 visualization framework for upstream E&P solutions. My first task was to add a data connector, so to gain knowledge of IVAAP and to understand more about the IVAAP software development kit, I used the IVAAP developer’s guide. I found this guide quite useful as it made the key points behind IVAAP easily understandable. Coding with IVAAP is actually easy, and I was surprised by several features of the platform and SDK that make it quite simple to learn.
Using INTViewer to Visualize Earthquakes and Other Seismic Activity
I often have a hard time explaining to friends and family what exactly INTViewer does. The moment I use the word “seismic,” the listener's mind automatically shifts to the topics of seismic activity and earthquakes, and I need to explain oil & gas exploration technologies before I even get to the software. By then, I have lost my audience. Today, I’ll try a different technique: I’ll describe the capabilities of INTViewer that actually cater to earthquake mapping. I will show how you can use the built-in capabilities of INTViewer to map recent earthquake activities.
5 Ways INTViewer Makes Offline Visualization Possible
I often say that INTViewer is a bit of Swiss knife. It serves multiple purposes, and each company finds a different use. This makes it hard to decide which feature to highlight. In the past few years, as the industry moved to the cloud, we created a companion for INTViewer: INTGeoServer, which makes it easy to visualize data beyond the bounds of your network. This year, with the new release of INTViewer approaching, I will highlight the opposite feature of INTViewer: its ability to work offline, disconnected from the world.
Installing the Seismic Unix Library on Windows [Walkthrough]
In our previous blog, Simplifying the Learning Curve of the Seismic Unix Library, we described how INTViewer can leverage the SU library. This library is typically meant for Linux, but it can also be used on Windows. This walkthrough describes how to install the SU Library on Windows 10 to use the Seismic Workbench plugin.
How the NetBeans Module System Helps Us Maintain Compatibility Between Releases
Two decades after its creation, the Java runtime has finally become modular. A modular approach not only makes dependency management easier, but it also makes applications more efficient as unused modules don’t need to be loaded. The NetBeans Platform predates Java 9 and has been using its own module system for years. Since INTViewer is a desktop application built on top of the NetBeans Platform, I find that it is far superior to the Java 9 module system for my use cases.
What Cloud Data Lakes Mean for Geoscience
With the explosion of storage capacity, cloud computing, and bandwidth availability, a trend has emerged in the oil and gas industry over the last few years. Data that was previously aggregated and discarded is now maintained and stored, creating an opportunity for the industry. Coupled with new advancements in machine learning and Al, this data availability is poised to drive more data driven decision making in well planning, drilling & completions, and well operations.
Enterprise Data Visualization: A Critical Component of Your E&P Digital Platform
Traditionally, the oil and gas sector has been slower than other industries to adopt new software and technology. When the market is doing well, companies have little time or motivation to invest in change. When the market is bad, companies lack the appropriate resources and budget. Since 2015, the oil and gas sector has experienced significant changes. An aging workforce, low oil market price, and the pressure to transition to cleaner energy are among the many factors forcing the Exploration and Production industry to rethink how it works, recruits, trains, and operates in order to stay in business.
How to Add Overlay to Visualize Data from ArсGIS Feature Service
In this post we consider how to display data, which includes geometry and nonspatial information like names from ArcGIS ESRI services using the GeoToolkit.JS Map Widget and WMTS data from OpenStreetMap.
Simplifying the Learning Curve of the Seismic Unix Library
INTViewer provides a graphical user interface for the SU library, reducing the learning curve. The Seismic Workbench is a free plugin that has the documentation for the SU library built in, making it easy to find a particular command and all the parameters that this command requires. INTViewer builds the full command line for you based upon all individual commands selected.
How to Improve Performance and Reduce Latency of Your Geoscience Data
Storing and accessing large, sometimes sensitive geoscience data is one challenge many top E&P companies face. Local data storage is one option. But what about data that is not stored locally? How do you access it quickly, and can you still use INTViewer?
Bridging the Gap Between Business and IT: Visualization Architecture in the Digital Oilfield
In our latest Tech Talk, E&P Visualization in the Cloud, we featured IVAAP, our cloud-enabled visualization and analytics development platform. We showed how it can be used to monitor and analyze well data as a critical part of your digital transformation. Thierry Danard, our VP of Core Platform Technologies, presented some of the technical aspects of IVAAP, so we asked him a few questions after the talk to dig a bit deeper.
Live Completion Is Better than AutoCompletion
A major feature of INTViewer 5.2 is the Python integration. Our development team worked very hard to ensure that our customers can get started easily and be productive once they are hooked. One consistent user feedback was that the Python terminal lacked autocompletion. It could become tedious to have to type the full name of each class, each method or each variable. We took this feedback to heart and implemented autocompletion in INTViewer 5.2.
How to Create Interactive Slideshows (VIDEO)
Presenting data to clients regularly poses many challenges, especially considering that today's datasets are more likely to exceed a petabyte or more. Slideshows that may take hours to create are often instantly obsolete and frequently don't fully answer your clients' questions. With one simple plugin, INTViewer transforms the art of showing data to your clients by combining the simplicity of a slideshow and the power of live data.
3 NetBeans Shortcuts to Help You Be More Productive
I have been using NetBeans daily for about 8 years, so I'd say I am pretty familiar … with the features I use all the time. Over the years, friends and colleagues have shown me that there are faster ways to get the job done. I have gathered in this post three shortcuts that I learned from others and that you can also use when you develop an INTViewer plugin.
Accessing INTViewer Remotely
In our blog post on Microsoft Azure, we describe various ways customers can move their data to the cloud. In the configuration where INTViewer is hosted on a remote server and needs to be accessed from a local workstation, a Teradici client is one solution. These configurations are increasingly popular with our customers. For performance […]
Picking Horizons in INTViewer 5.2
Horizon picking is a feature that INTViewer has included from the start. However, after discussing with several long-time users, I have found that the evolutions brought by each release can be missed. The release of INTViewer 5.2 is a good opportunity to tour basic picking options. First, a bit of terminology. The term “horizon” in […]
Overlaying Shape Files on Seismic Surveys
In our post, “Closer Look at Coordinate Conversions,” we allude to the capabilities of INTViewer with coordinate system conversions. One benefit of on-the-fly conversions is the ability to see your seismic data in context. In the example below, a time slice is reprojected to the coordinate system used by Google Maps. Showing satellite […]
Visualize Microseismic Events with INTViewer Plugins [Walkthrough]
INTViewer is well-known for its seismic analysis capabilities. Among the less well-known plugins, there is a set that always impresses during demos: the microseismic plugins, a set of four plugins that allows INTViewer users to visualize microseismic events.
New Window System for INTViewer 5.2
If you are already a user of INTViewer, the first thing you will certainly notice when you open INTViewer 5.2 for the first time is the new window system. The way windows are laid out on screen has changed, introducing tabs to browse through these windows.
A Closer Look at Coordinate Conversions
INTViewer makes coordinate conversions virtually transparent to users. Users pick two Coordinate Reference Systems (CRS), one for their data and one for the visualization map, and the visualization updates automatically. How does INTViewer do it? The short answer is “it depends”. The long answer is that the strategy used varies based upon the CRSs selected, […]
Microsoft Azure + INTViewer
The cloud is not just a set of computing resources hosting web based-applications. Microsoft Azure can also be used to host what we know today as desktop PCs. Constant availability and unlimited storage are just two of the numerous advantages of hosting your PC on the cloud.
Simple Usability Features for Desktop Applications
Microsoft Windows has a standard dialog to choose and save files, but this is not an optimal way to navigate your file system from within your application. INTViewer addresses this issue.
Introducing the Normalization Widget
The Normalization widget is one of the new tools in INTViewer 5.2. It shows graphically how your current selection relates to the minimum and maximum amplitudes of the entire dataset. There are several normalization options in INTViewer: RMS, Maximum, Limits, etc.