Relational to JSON in Oracle Database

By | Uncategorized | 14 Comments

More and more often these days, front-end developers want their data in JSON format. And why not? JSON is a simple data-interchange format that’s lightweight and easy to use. Plus, many languages now provide a means of parsing and converting JSON data into native object types. However, not all data is best persisted in JSON format. For many applications, the relational model will be the best way to store data. But can’t we have the best of both worlds? Of course!
Read More

Authentication with Node.js, JWTs, and Oracle Database

By | Uncategorized | 12 Comments

Authentication isn’t exactly hard, it’s just that there are a lot of moving pieces to consider. Should you provide local authentication or 3rd party authentication via identity providers such as Google and Facebook? Can you reuse an existing credential store like Active Directory? What libraries should you use to help you encrypt passwords and manage logins? Should you use cookie based authentication with sessions or use the emerging JSON Web Token (JWT) standard instead. Are there libraries for JWTs? Which is the best? Okay fine, authentication is hard. But it’s also necessary.
Read More

A Look Back at COLLABORATE15

By | Uncategorized | No Comments

I spent last week in Las Vegas for COLLABORATE15. Having never been to Vegas before, my wife and I decided to go a little early to enjoy the city. That turned out to be a really good idea (if you don’t count the money I lost) because once the conference got underway I never really made it back out to the strip… COLLABORATE keeps one busy!
Read More

Postman test

To JavaScript, or Not to JavaScript, That is the Question

By | Uncategorized | One Comment

I should probably start this post off by stating that I LOVE JAVASCRIPT! But I will also confess that I am NOT a monoglot! I’ve studied various programming languages over the years to varying degrees. Most languages (as well as tiers, libraries, frameworks, and platforms) have sweet spots where they excel. Often times it can be tempting to use one language over another because that’s the one you know best. However, this type of thinking can eventually lead to performance, scalability, maintenance, and a number of other issues. In this post we’ll explore an example of how a little knowledge of PL/SQL can help keep your JavaScript/Node.js code neat and clean while providing some nice performance benefits!
Read More

Making a Wrapper Module for the Node.js Driver for Oracle Database

By | Uncategorized | 20 Comments

The Node.js driver for Oracle Database, node-oracledb, is pretty low level – as a good driver should be! But that doesn’t mean you have to work at that level all the time. Perhaps you’d like to…

  • use promises rather than callbacks
  • have a simplified execute method that doesn’t require getting and releasing connections
  • ensure that certain buildup and teardown procedures are used to keep connections clean and consistent

All of these are great reasons to create a wrapper module for the driver that gives you what you want without having to wait to see if these features are added to the driver itself (which they may never be). I wrote a sample application that uses such a wrapper module that implements all of the functionality listed above.
Read More

Throttled File Loading with Node.js & Oracle Database

By | Uncategorized | 4 Comments

A little background

There have been some interesting discussions lately related to the Oracle Database Node.js Driver and support for streaming and LOBs:

As of the time of this writing Chris Jones, the Product Manager of the driver, is still looking for feedback on these topics so please add yours if you have any! As for me, I hadn’t tried to do much with LOBs and Node.js so I didn’t really know what types of features I would like to see in the driver. I needed a project that would force me to get my hands dirty… Read More

Real-time Data with Node.js, Socket.IO, and Oracle Database

By | Uncategorized | 22 Comments

Real-time data is an increasingly popular topic these days. The basic idea is simple: when data in the database changes, any clients viewing the data should see the changes immediately, or in real-time. Gmail and Twitter are great examples of applications that make use of real-time data. Users of these applications don’t need to refresh the page to see new email or tweets, instead new data is pushed to the clients when it becomes available.
Read More

Fun with Node.js and APEX

By | Uncategorized | 10 Comments

A couple of weeks ago I release a video that showed people how to get up and running with Node.js and Oracle on the App Dev VM. This post builds on the work done there and demonstrates some of the power and flexibility of Node.js and the Oracle Database Node.js Driver.

Last week I started thinking about a new project for the Oracle Database Node.js Driver. I have a lot of experience with Oracle Application Express (APEX) and I wondered if it would be possible to use the driver as the basis for a new APEX listener powered by Node.js.
Read More

Up and Running with Node.js & Oracle

By | Uncategorized | 9 Comments

Looking for something to do this weekend? Why not get Up and Running with Node.js & Oracle?!? This tutorial will walk you through the basics of installing the Oracle App Development VM, installing Node.js in the VM, and then installing the Oracle Database Node.js Driver. In less than 20 minutes (excluding download times) you can be running the examples and making your own!