In my previous post in this series I covered linking GitHub and DockerHub and configuring the environment such that a build of a Docker image was triggered on updates to GitHub. In this final post of the series I will take you through the steps to pull the image from Docker Hub into OCCS in order to run the application. It should be noted that the image built on Docker Hub in my example is only the web tier that contains my Node.js project (APIs and SwaggerUI). The MongoDB component of my OCCS Stack is pulled directly from Docker Hub when my Stack containing the Web Tier and Database Tier services is deployed to OCCS. Continue reading “Exploring GitHub Docker Hub and OCCS Part 4”
“I’m afraid that the following syllogism may be used by some in the future.
Turing believes machines think
Turing lies with men
Therefore machines do not think
Yours in distress,
The journey started five months ago when I went to Bangkok to attend the Intelligence Chatbots Masters Training run by Oracle Product Management. Since then, I’ve been lucky enough to dive deeper into the world of Natural Language Processing. While I think it’ll take me a while to transition from crawling into walking through this fascinating world I’m happy to start sharing my findings.
This blog is about Entities and Intents which are the key building blocks for Natural Language Processing.
In today’s environment where systems run in the cloud and so much business and personal activity occurs online, passwords are not strong enough by themselves to protect applications. Scandals about password breaches seem to happen on a regular basis. It’s easy to find many case studies where passwords have been compromised as a result of malware, email scams and other techniques. The key point is that no matter how strong our passwords, no matter how much we educate our users, there will be situations where people are caught off guard and click on the wrong link, look at the wrong email or open the wrong document. Once this happens, our passwords can be compromised.
The May 2017 update for ACCS (17.2.3) brought a cool new feature to ACCS, zero-downtime updates. While previously, there was support for performing a rolling restart of an application instance, where each instance would be brought down and updated in turn, this only enabled zero-downtime updates if you had an application running two or more instances, and your application could satisfy performance requirements with one fewer node. While any production system should be able to satisfy these requirements, many of the utility systems I ran were on a single node, and I had to send out an email blast to avoid being disruptive when I wanted to push a quick code fix.
This blog shows you how to use the Twitter ICS Connector that comes out of the box in Oracle Integration Cloud Service.
Obtain your Twitter Connector in ICS
In order to create a Twitter Connector you need to first go to Twitter developers portal and create an access token. For this:
- Login to the Twitter Developer portal at https://dev.twitter.com/
- ON the top right, click on My apps and follow the link to log in (sign up if you don’t have an account yet).
Join us at this 2 day Partner Technical Forum (PTF) being held on Tuesday 9th & Wednesday 10th May 2017 in our Melbourne office at Level 5, 417 St Kilda Road.
On the 1st day, hear about the latest updates on Oracle Cloud IAAS and PAAS Strategy & Portfolio.
Oracle Cloud Platform Practitioners sharing latest Cloud Announcements & Roadmaps for areas such as:
- Application Container, Oracle Container & Developer Cloud Services
- Integration Capabilities, PAAS for SAAS
- App Builder, Process & Mobile Cloud Services
- APIs, Devops & Microservices
- Identity Management
If you choose to attend the 2nd day, join the “Hands-On” experience with a number of the above Cloud Services.
For those attending Day 1 and/or Day 2, you are also invited to the PTF Dinner following Day 1, on Tuesday 9th May at the Royce Hotel.
For further details visit the registration page: http://bit.ly/PTF-melb
Throughout my development experience, I feel that I have had several major bursts-of-learning, due to problems which have made me re-evaluate how I approach architecting and developing a solution. I feel these ultimately make me better as a programmer, or at the very least, more versatile. I am sure some of these bouts of learning and understanding are near universal, experienced by most developers, such as understanding parallelisation, but others are somewhat more specialised, such as when I first started writing games, where having to take 60+ snapshots of a continuously evolving environment every second completely changed how I thought about performance and accuracy. Developing Cloud-Native applications (and indeed micro-service based applications, which share very similar principles) feels as though it is one of these moments in my development experience, and I feel it might be interesting to reflect upon that learning process.
I see the problem statement for Cloud-Native applications as something akin to: ‘you have no idea how many instances of your application will be running, you have no idea where they will be in relation to one another and you have no idea which one will be hit for any particular call’. That is a lot of unknowns to account for in your code, and forces you to think very carefully about how you architect and develop your applications.