Categories
Notes In 9 XPages

If you still believe in IBM’s “Backward Compatibility” you’re nuts.

Yes that’s a shocking title.  I almost NEVER do that.  But I wanted to get your attention so sue me.

I’ve seen a couple of remarks here and there about XPages and poor “backward compatibility” like we’re used to having with the Notes Client.

First thing to know.  In the Web / XPages world “Backward compatibility” guarantees are a thing of the past.  They’re done.  Get over it.

Second thing, and this is very important.  This is NOT IBM’s fault at all.

(Ok, well maybe on rare occasion it’s 5% their fault because some things would be nice if they knew ahead of time – cough iOS and Dojo)

If you want to stay in the Notes client then yeah ok, you could probably expect good backward compatibility.  But if you go into XPages and stuff forget about it.  It’s not going to happen.  There’s just too many moving parts.  dojo, ckeditor, different web browsers, different operating systems.  This is not IBM’s fault.  This is just a different world then the closed box Notes Client.

Case in point today.  I got news that my file upload system stopped processing pictures from iPads running on 9.0.2.  Well crap that sounds bad and gives me flashbacks of the last XPages / iOS issue.

After a full team press on this we discovered the problem. Then Declan found this post.

In iOS 9.0.2 if you upload from the iPad photo library the file type is “jpeg”.  This is a CHANGE from Apple.  Stupidly, if you upload direct from the camera the picture comes through as “jpg”.

So guess what idiot had this line of code :

if (this.smallType.equalsIgnoreCase(“JPG”)) {

yeah that would be me…

Changing it to :

if (this.smallType.equalsIgnoreCase(“JPG”)  || this.smallType.equalsIgnoreCase(“jpeg”)) {

Solved the immediate problem.

Now overall my code is not very robust.  It was a rush job originally and the amazing Devin Olson is currently doing the next version much better.

But we as developers need to learn how to test better. And we need to test more often.  And not just when a new version of Domino or a new version of the Ext. Library comes out.  But you need to test when mobile OS’s get updated.. desktop OS’s, etc…

And in addition to testing if you’re going to be running Web / XPages applications you MUST be able to stay on more current versions.  Everything else is changing around your app.  Your best chance really is ALWAYS run the latest and greatest. If your company isn’t willing to do that then they’re nuts! Gone are the days when you say “Works best with Internet Explorer 6”.

I do not know how to do automated testing.  There was  NotesIn9 #40 on Selenium  but I’m not sure that’s still valid.  I hear Selenium has problems if the id’s change as XPages is known to do.

If anyone has good testing strategies I’d sure be interested in hearing about it.

Categories
Notes In 9 Podcast XPages

NotesIn9 183: Thinking Different In XPages

Ok, this show is a little different. Well..  a LOT different.

In case you didn’t know, David Navarre runs an EXCELLENT blog at lostinxpages.com. He recently made a post that I thought was rather interesting :

Writing and speaking about your code might actually make it better

It should come as no surprise that I 100% believe in the title of the post. In that post David talks about a coding challenge that he recently had to deal with.

I began to comment on his post and once I realized it was going to get a little “long winded” I figured I’d just make a show out of it.  Lot less typos that way!  🙂

Anyway this show doesn’t really have a true “demo”, but I discuss his post and solution to his problem and then talk a little bit about a possible alternate solution and why you might want to consider that.

Big thanks to David for not only running a great blog and videoing sessions at MWLug but also being a really good guy!

Categories
Java Learning XPages XPages

NotesIn9 182: XPages and Java from Start to Finish

In this show I do an in depth demo of an XPages app that’s based on Java Code. I didn’t take time to build it from scratch in front of you, but I go over every line of code in the app.
The app lets you you Create, Read, Update, and Delete Project documents, and then add to each project an unlimited number of tasks.

It’s a long demo – but I first show the app, then go through all the Java code, and then finally the XPages code itself.

I hope this helps you put the pieces together to consider adding Java to your XPages toolbox.

Note: In the Demo, I do use the OpenNTF Domino API which makes life so much easier. It’s not required and in the near future I will try to produce a “cheatsheet” to help translate from the API to the lotus.domino classes.

 

ni9-182 Demo File.nsf

Categories
XPages

Surprise! There’s an Ask the IBM XPages Experts Event today

I just found out last night about this Ask the Experts session from IBM on XPages.

http://www-01.ibm.com/support/docview.wss?uid=swg27046328

  • Tuesday, September 15, 2015
  • Time: 11:00 AM EDT (15:00 UTC/GMT, UTC-4 hours) for 60 minutes

To the person who commented on this on my blog post back from 2013 THANK YOU very much for letting me know about it!

I kinda wish I so it sooner so I could plan better.  But I’m going to try and attend.

Looks like there’s another event coming soon on the Domino Database.

http://www-01.ibm.com/support/docview.wss?uid=swg27046303

Categories
AngularJS XPages

NotesIn9 180: Alternative Frontend Development for XPages

In this episode Eric McCormick returns with a great show talking about how to surface some of your XPages/Domino data to different frontends like AngularJS.

 

 

Categories
Bluemix Well Crap XPages

The XPages and IBM Bluemix showstopper, for me at least

Ok I’ll admit it..  I’ve not really been paying much attention to IBM’s Platform as a Service offering called “Bluemix”.  For the longest time there was no XPages component.  Of course I’d love to play with all the other technologies that it offers, and there are a lot, but as primarily an XPages Developer at the moment I just don’t have good time or practical ideas for anything else.

Then they finally put XPages and the “XPages NoSQL” database into Bluemix.  Experimental for now, but it’s in there.  Now it has my attention.  I could run XPages in Bluemix and maybe hook into all the Watson goodness and all the other bells and whistles that they offer.

As soon as the XPages Experimental went live I saw several posts by Marky Roden and others and I’m thinking cool,  now I can get started.

Then I went to MWLug and learned something really REALLY unexpected.

Because the Domino server is NOT “Multi-Tenant” it means that the “XPages NoSQL” database is really just a semi-isolated slice of I guess an actual Domino server.  I’m not sure of the plumbing.  But it specifically means that this “XPages NoSQL” database should NEVER EVER be used for PRODUCTION data. If one customer caused a crash it would take down multiple customers. The “XPages NoSQL” database on Bluemix has only ever been intended to be a “developers playground”.

My current understanding is that if you actually do want to use XPages on Bluemix for a production app then you must host the data either on IBM’s Softlayer service or “On premises” with your own copy of Domino.

So I guess that you need to subscribe to Bluemix for the “app” but then also pay for the data either in a Softlayer subscription or via Domino licensing.

This really REALLY disappoints me and assuming I’m understanding this correctly, I’m not sure I see the point in anyone doing much with XPages and Bluemix unless maybe you just HAD to access some Bluemix specific resource from an XPages application. Maybe there are use cases for this but none that really jump out at me.

If I’m wrong on any of this please let me know.

Categories
Community XPages

NotesIn9: Will Kinda… Let’s talk about MWLug!

I’m going to MWLug.  One of the best community conferences that’s run by the community and put on for the community.  Their Dev track is OUTSTANDING this year.

Here’s a little video I put together talking about the conference.  Hopefully I can convince you to come and say hi!

http://www.mwlug.com/mwlug/mwlug2015.nsf/Home.xsp

August 19-21 2015

Categories
Learning XPages Notes In 9 XPages

NotesIn9 Updates the #XPages Episode Guide

It’s been long overdue but I finally got around to updating my Episode Guide to contain all my shows.  Please check it out!

https://www.mindmeister.com/280533435

I often get questions from people on “Where do I start” with XPages.  This guide probably isn’t great but I do have some nodes for “Start here” and “Beginner” that I typically point people to.

I hope it’s helpful!

=====

P.S. Call for Ideas / Help!

This mind map is meant to be a poor mans Table of Contents.  XPages.TV was meant to fill that role but that’s an epic fail and I’ve not had time to re-write it yet.

The problem is that unlike a typical “topical blog”,  some of my early shows are as valid today as they were back in 2009.  It’s difficult for people to find all the NotesIn9 content.  So I’m trying to come up with a nice interface for people to find all the shows.  I do NOT know a WordPress way though I’m sure there’s something out there.

The problem with the mind map is I need to manually re-key it.  Also it would be nice if shows could be in multiple categories.

If anyone has a better ideal or solution please let me know.  I like the visualness of the mind map but I don’t have a way to auto feed it.  Maybe there’s some WordPress plugin that’s better overall that would aid users in finding shows.  WordClouds and Searching just doesn’t cut it. Ideally something that’s NOT manually maintained would be great.  It can be a pain to publish shows because of all the duplicate data entry.

Please comment or email me any ideas you might have.  I’d appreciate any advice.

Thanks!

 

Categories
Notes In 9 Podcast XPages

NotesIn9 178 : XPages Bootstrap Date Picker Part 1

In this show John Jardin returns with another great XPages meets Bootstrap show.  Today he’ll show us how to get a better date picker for your XPages applications.

Categories
Notes In 9 XPages

NotesIn9 177: Bootstrap Pager Styles for XPages

In this show IBM Champion and great friend of NotesIn9, Mr. John Jardin returns with the first of several shows talking about Bootstrap and XPages.

In today’s demo he’ll show you how to turn the rather bland page into the much nice Bootstrap look and feel.  And the best part?  You don’t even need to use Bootstrap to do it.

Check out the video to learn the secret!