Wednesday, October 28, 2015

Xamarin at OpenWorld

On the first day of Oracle OpenWorld I was walking along 5th street, between Moscone West and Moscone South, when someone handed me a flyer. This is not unusual at OpenWorld, and I expected the flyer to be about some thing which I did not care about in the least, some obscure company that did some obscure thing with some obscure Oracle product.

But the flyer said Xamarin.  I did a double take.  "Why is Xamarin here?" I thought.  OpenWorld is dominated by Java and Java developers.  And Xamarin is all .NET.  Not just a shop that uses .NET by chance or casually - these guys are hard-core, serious developers, and the Mono/Xamarin team has been core to the development of .NET.   So why were they here in the land of Java? I pondered this a few days, then on Tuesday night, decided to stop by their event at the Red Dog saloon.

So why did this strike such a chord?  Well, I am a fan of walking, and a fan of podcasts.  So I tend to walk alot and listen to alot of podcasts.  Miguel de Icaza is a founder of Xamarin, and I recall quite well him talking about the founding of Xamarin back in 2011.  It could have been on a number of different podcasts, such as Hanselminutes, Herding Code, or even Ruby Rogues.

Before Xamarin, Miguel worked on Mono - a project started in the early 2000s to make .NET run on non-Windows platforms.  That project was exciting to me, and even though most of our clients are 100% windows shops, I followed the developments in Mono.  The fact is that Microsoft claimed that .NET would follow standards and be platform-neutral, but that was just a theory.  Miguel and his team had the audacity to take that theory and make it a reality.  They created Mono, a version of .NET that could run on non-Windows devices.  It was not easy by any means.  They worked with/struggled against Microsoft, both politically and technically.  And wound up making a success, and keeping Microsoft true to its claim of platform neutrality. But the Mono project was always overshadowed by the fact that the Mono team worked at Novell, a rickety old corporation, ready to die or fade like so many other pre-millennial companies that failed to stay lean and relevant.

Fortunately (in hindsight) Novell was acquired by another company in 2011, and laid off Miguel.  He then announced the foundation of Xamarin, a company dedicated to carrying forward on the Mono ideals.  This was a great underdog story, so really appealing to me and many others.  Xamarin launched Xamarin studio, a cross-platform integrated development environment (IDE) for .NET development.

Another Mono product which Xamarin further developed was Mono Touch and Mono for Android, frameworks for deploying .NET solutions onto iOS and Android devices.  I had heard about this, and recall a "smackdown" meetup back in 2012/13 where Xamarin was pitted against PhoneGap and Titanium in a contest to see who could build an app fastest.  This was fun and interesting.  But my group does not do app development, and so I did not really follow this further.  Xamarin faded from my awareness, into the background of a zillion other software companies.

So now it's 2015, a few years since Xamarin was founded, and here they were at OpenWorld.  It turns out they are headquartered in San Francisco (for some reason I imagined Miguel was in Colorado Springs).  And the company just joined on as a partner or Oracle (see the announcement here). And Xamarin now has a focus of which I was unaware.  They are dedicated to ensuring that using Xamarin, you can write apps which will work on ANY device.  Their team in Denmark purchases mobile devices from around the world and has an extensive suite of tests to verify that apps made from Xamarin work on them all.

I had a great conversation with Charles Wang, automation engineer, and Villars Gim, procurement manager.  They explained how Xamarin has three areas of focus:  Building, Testing, and Monitoring.
Building is ensuring that Xamarin Platform enables developers to write C# code for their mobile apps and those apps, written once, can be pushed onto iOS, Android and Windows phone.  Possibly more device platforms than that, but who really uses Blackberry anymore?

Testing is verifying that the apps created with Xamarin will work on almost all devices.  Developers can use Xamarin's TestCloud to run tests on practically any device.  And Villars is responsible for making sure that they actually have every device that they can lay their hands on - from the latest iPhone to the most obscure/obsolete phones and tablets.

Monitoring is fairly new. This is having an infrastructure for getting feedback from Xamarin apps running on devices in the hands of end-users. Checking stability and performance, and using this to identify issues quickly.

So I am very glad I went and learned more about Xamarin.  The underdog of 2011 is now a thriving company, with a strong team of very intelligent and enthusiastic people. And their very impressive suite of mobile development tools help you create, deploy, monitor your apps across devices.   Now I just wish I had a reason to make an app...

Good on ya Miguel!

San Francisco
Oct 2015



Sunday, October 25, 2015

OpenWorld - SIG Sunday

While the official Oracle OpenWorld sessions start on a Monday, the Sunday prior is dedicated to user group sessions.  Usually people arrive on Sunday and the sessions are in the afternoon. But this year the Oracle Primavera SIG was at 9am - and that was not even the earliest session!

The sessions started at 8am and continued to 4:30. There were about 20 to 25 sessions going on at any given hour, for 8 hours.  That's a lot of people and a lot of info!   So what are all of these talks?

A SIG is a Special Interest Group, organized by OAUG, IOUG, and Quest.  There are many such groups, dedicated to many interests. There are ones about technology such as BI Piblisher and Fusion Middleware.  There are regional ones such as Latin America and Central States.  There are sector specific ones such as Higher Education and Cost Management. And of course application specific like Primavera.

The OPSIG meeting was run by John Hartman of CH2M Hill.  At that meeting I learned that P6 Analytics is being renamed to Primavera Analytics, in anticipation that future versions will provide analysis of more than just P6, such as Unifier and Instantis.  We also learned about the activities of the SIG, most importantly that the deadline for Collaborate 16 abstracts is less than two weeks away! 

After OPSIG I did not have anything specific planned, so attended a few of the talks on the roster.

The first one was about - Trek Bicycles!  A subject dear to me as I certainly wished I had been out riding my Trek on this lovely fall Sunday.    It was quite interesting, given by Bryan Turner of Trek, and Viral Doshi of KPIT.  Trek recently set up sensors at their plant in Wisconsin to track their supply of decals.  The decals go under the outer coating of clear paint on a bike, and are specially ordered from suppliers as needed.  If they don't have the decals, they can't finish their bikes - which is bad for the bottom line.  And since the decals and suppliers were known quantities, this was an excellent situation to try out using sensors to automatically re-order the decals when needed.  This system is simply a set of sensors which measure the height of the stacks of decals in inventory.  When inventory gets low, the sensor communicates to JD Edwards, which then generates and sends out a Purchase Order.  Pretty simple, but a great way to save time at Trek and ensure that they don't have to halt a bike shipment due to decal shortage.

It also turns out that Trek was involved in the B-Cycle project in Denver/Boulder!  Another project dear to my heart.


The next talk was from Jon Wakefield of Velocity, a consulting company based on North Carolina.  They are specialists in Peopleoft, Fusion HCM, and Taleo.  Taleo is yet another company acquired by Oracle, back in 2012.  It is a product for recruiting and managing talent.  But the goals of the project are something I am very familiar with - integrating data between different systems.  The project for Velocity actually involved more than just integration, it started with helping the client migrate from PeopleSoft to Fusion HCM, no small task by itself.  Once the migration was done, Velocity set up systems for extracting data and importing data using a combination of batch scripts, file transfers, and imports.   We also learned about the HCM Data Loader, and other technologies that help with migrating and integrating data with Fusion HCM.

The last session I attended was Integration in the Cloud, by S&P, a company based in Mexico City.   This also was a talk about integrating Taleo, but this time with PeopeSoft.  The speakers, Arturo Viveros and Rolando Carraso, are Oracle ACE's in the integration space, and heavily involved in the Latin American user community.  They also have a blog called SoaMythBusters, which discusses the happenings around Oracle's various integration technologies.  One of the most interesting things I learned about at this talk was the existence of Oracle Integration Cloud Service (ICS).  This is a hosted service which can be used to integrate your data between cloud-cloud systems, or a mix of cloud and on-premise systems.  This is a very important part of Oracle's overall strategy of not just selling licenses anymore, but of being a provider of cloud services.  If you look at their pricing these days, the cloud license costs are comparatively cheaper than their on-site licenses.  But traditionally, cloud-hosted solutions can be difficult to integrate.  I have much more to learn about ICS, and am looking forward to doing so during the rest of OpenWorld 2015.


San Francisco, CA
Oct 2015



.   

Sunday, October 18, 2015

Heading out to Oracle OpenWorld 2015!



The aspens have turned gold, and the bright crisp days of autumn are upon us here in the Colorado Rockies.  This means it's time to head to San Francisco for Oracle OpenWorld!

This year we are excited to learn more about the Primavera Gateway integration product and the plans Oracle has for its development in 2016.  We have dived deep into Gateway in the 3rd quarter of 2015, and have created our own Calance PeopleSoft Provider.  We are now actively using it to integrate data between PeopleSoft and a set of custom business processes in Unifier.  In this work we have learned much about Gateway, and we have feedback to share with the Oracle team on what we perceive to be its strengths, as well as its shortcomings, with the aim of helping this product improve and deliver better and better solutions for Primavera users.

We are also curious to learn about plans for Unifier, particularly its mobile options. These days clients (and you, and me, and everyone we know) prefer to do many tasks on mobile devices such as phones and tablets.  If an application cannot work on one of these devices, that is a major disadvantage. Unifier is fortunately not hindered by Java applets like Primavera P6.  So in theory, a re-skinning with responsive design could get Unifier working natively on mobile.  But it may be that Oracle Primavera would instead create a true mobile app, much like the P6 Mobile app for iOS and Android (sorry Widows phones!).  Or the lightweight Team Member HTML5 app which works great on an iPad.  Neither of these P6 solutions have the power of the desktop web, which is itself much less powerful  than the P6 Professional desktop client.  But they are good moves in the struggle to liberate P6 from the PC.  Anyway, we are much looking forward to learn what mobile options Oracle is planning for Unifier.

Although it is hard to miss a week of this lovely weather, with the leaves falling and the chance of first snow, San Francisco is a great place as well.  AirBnB and Uber make is easy, cheap, and  fun to stay and get around the city, and the entertainment this year is Beck and Elton John - how could you go wrong with that?


Boulder, CO
Oct 2015

PS: Our new website is now  live - check it out here:
http://www.calanceus.com/development/oracle-integration/

Fall in the Rockies


Saturday, October 17, 2015

Procore, and its Integration API, is simply awesome


Calance joined the Procore Beta program in the 3rd quarter of 2015.  We had a long-term client who was moving to Procore and they needed some integrations with Sage 300 CRE that Procore did not provide out of the box.  This client has been using our Dimension Integration Framework to integrate data between Oracle Primavera Contract Management 13 and Timberline  Accounting (aka Sage 300 CRE) since 2009.   They were in the process of migrating off of PCM and replacing it with Procore, and asked us to help out.   

While we were a tiny bit sad to see yet another customer move off of PCM, that little sadness was greatly offset by the excitement we felt once we started working with the Procore team and got the opportunity to see Procore in action. It not only has a clean, modern user interface, but it has an equally modern and well-documented API, making integrating with it actually pleasurable!

Let's get the obvious out of the way first - what are the benefits of Procore from customer's point of view?    Well, it lets you manage contracts, vendors, commitments, submittals, RFIs, bids, punch lists, and more.  All the things you need to manage construction projects, making it ideal for General Contractors.  You can even manage Prime Contracts, which is a very nice feature.  It is hosted, so you don't have to purchase hardware and go through painful installations (I'm looking at you Oracle!).  

Also, you can use it anywhere.  It's designed for modern web browsers, working great on PCs, Macs,  and tablets.  And while it's not ideal on a  phone, you actually  can zoom in pretty well and  still get things done.  Procore also provides free apps for mobile and tablets.  Right now these are mainly for reading information, but we expect Procore to improve on them with time.  

Procore provides a set of integrations with Timberline which provide basic functionality.  Where we get involved is where clients need solutions not provided by Procore, such as insurance updates and payment holds.  We are looking to take our complete Timberline integration suite we have developed over the years for PCM and adapt all of it for Procore. This includes projects, cost codes, extras, estimates, budgets, change orders, commitments, commitment change orders, payments, pay rates, and much more. It's a big project, but well worth it.

Another feature we love is demonstrated by the image below, a pop-up which appeared as we were working in the system one day:



As you can see,  the Procore team is constantly improving its product, and they are being very transparent about it.  As updates happen, everyone gets them, and are notified  in friendly messages like this.  They don't make a big deal of it, this consistent, continual improvement is key to their success. This mixture of technical drive and open communications makes Procore stand out as a product designed for the next generation of users.  And even old-timers like myself really appreciate it!

Boulder, CO
Oct 2015

PS: Our new website is now  live - check it out here:
http://www.calanceus.com/development/integration/