357 Lotus blogs updated hourly. Who will post next? Home | Downloads | Events | Pods | Blogs | Search | myPL | About 
 
Latest 7 Posts
Changing URL in File Download Control...
Wed, Jun 25th 2014 180
A Quick Question for Administrators...
Tue, Jun 10th 2014 234
RIP Tim Tripcony...
Mon, May 12th 2014 685
E-mail will be dead... For some people...
Sat, Feb 22nd 2014 353
IBM Connect 2014 slidedeck on the IBM Social Business Toolkit SDK
Thu, Feb 6th 2014 586
BP308 - The Journey to Becoming a Social Application Developer
Tue, Jan 21st 2014 247
My previous blog post was ’Hot’!
Sat, Dec 7th 2013 267
Top 10
RIP Tim Tripcony...
Mon, May 12th 2014 685
IBM Connect 2014 slidedeck on the IBM Social Business Toolkit SDK
Thu, Feb 6th 2014 586
Mystery Solved: "Error loading USE or USELSX module"
Mon, Nov 21st 2011 494
A little story about an error with ID Vault...
Wed, Jan 12th 2011 448
Authenticating Notes users for Web apps automatically...
Wed, May 11th 2011 379
E-mail will be dead... For some people...
Sat, Feb 22nd 2014 353
Still part of it: IBM Champions
Fri, Dec 6th 2013 285
My previous blog post was ’Hot’!
Sat, Dec 7th 2013 267
Domino is Curious: A Potential DAOS Problem...
Wed, Aug 14th 2013 252
BP308 - The Journey to Becoming a Social Application Developer
Tue, Jan 21st 2014 247


"Dotless i", toLowerCase and toUpperCase functions: Use responsibly!
Serdar Basegmez    

"Dotless i" problem is the most profitable area in my revenue stream :)

Since the beginning of my career, I found and isolated dozens of bugs simply related to 'dotless-i'.

I have already blogged about it couple of times, but let me sum up the problem.

There are Turkish characters in our language, as in many others. But two exceptional cases are "ğ" (curved g) and "ı/İ" (dotless-i/dotted-I) characters. The first one is a whole different story that some linguistic experts suggest its removal. The second one is a serious headache for us.

Image:"Dotless i", toLowerCase and toUpperCase functions: Use responsibly!
Dotless-i, is a lowercase 'i' without dot. The uppercase of this character is the usual "I". There is another character, "I with dot". The lowercase of this character is the usual lowercase "i".

Have you noticed the problem? This unsymetrical conversion causes a serious problem in programming. We face this problem mostly in Java applications because of (IMHO) poor implementation of toLowerCase and toUpperCase functions.

In Java, String.toLowerCase() method converts characters to lowercase according to the default locale. This causes problems if your application works in Turkish locale and especially if you are using this function for a file name or a url that must obey a certain character set.

I have blogged about two serious examples before: The compile errors with Script libraries with "i" in their names and XSP Manager's fault if an XPage is in a database with "I" in its name.

There is a long history, as I said. For instance in some R7 version, router was unable to send a message to a recipient if his/her name starts with "I". Message reporting agents was not running in Turkish locale until R8. Anyone with Turkish locale could not install Lotus Notes 8.5.1 (it's real!). The list goes on...

There is almost no beta tester from Turkey and customers don't open PMR for these problems. So these problems are not going up to the first priority for development teams.

Even Java team has added a special warning to the latest documentation:

Note: This method is locale sensitive, and may produce unexpected results if used for strings that are intended to be interpreted locale independently. Examples are programming language identifiers, protocol keys, and HTML tags. For instance, "TITLE".toLowerCase() in a Turkish locale returns "t?tle", where '?' is the LATIN SMALL LETTER DOTLESS I character. To obtain correct results for locale insensitive strings, use toLowerCase(Locale.ENGLISH).


My point is to give a simple suggestion for all Java programmers.

If you are using toLowerCase and toUpperCase function for non-textual context, use them as suggested above!

Use responsibly :)



---------------------
http://lotusnotus.com/lotusnotus_en.nsf/dx/dotless-i-tolowercase-and-touppercase-functions-use-responsibly.htm
Apr 05, 2012
124 hits



Recent Blog Posts
180


Changing URL in File Download Control...
Wed, Jun 25th 2014 7:11a   Serdar Basegmez
After a very long period of silence, here I am with a tiny little trick about File Download Control in XPages. I saw that there are lots of questions about this component, related to showing attachments instead of downloading them. Stephen Wissel explained how to build a download url with the XPages syntax. The old style notation (which DOES NOT work in XPiNC): http(s)://[yourserver]/[application.nsf]/[viewname|0]/[UNID| ViewKey]/$File/[Attachm [read] Keywords: domino ibm ldd lotus notes xpages application database development javascript server
234


A Quick Question for Administrators...
Tue, Jun 10th 2014 6:14a   Serdar Basegmez
Just a quick question. Especially large domains have lots of users with the same full name. In modern directory systems, we can decrease the possibility of conflict by using hierarchical naming, however that will become an issue eventually, when you need to specify an e-mail address. I have seen that adding a number to the first or last name (John Smith , John 1 Smith, etc.) is highly popular. How do you handle people with the same name in your environment (e.g. Domino, AD, Connections, et [read] Keywords: connections domino lotus
685


RIP Tim Tripcony...
Mon, May 12th 2014 1:55p   Serdar Basegmez
As many friends around, we are shocked and deeply saddened by unexpected loss of our own Tim Tripcony. Tim Tripcony was one of the most talented developers I have met... He inspired all of us by challenging all kinds of limits in our platform and finding really elegant patterns in various problems. He was always polite, helpful and positive with people. RIP, my friend. You'll be missed a lot. [read] Keywords:
353


E-mail will be dead... For some people...
Sat, Feb 22nd 2014 5:14a   Serdar Basegmez
Just an off-topic post, but can't help blogging about that. We are having bad times in our country. Summaries in English can be found here, here and here. Last two incidents are strongly related to very social context of our information and technology domain... Welcome to the remake of Orwell's 1984... The first is the change in the "Internet Bill", legal changes around monitoring and censorship. According to the bill, a government official, head of Turkey's telecommunication autho [read] Keywords: ibm blogging network
586


IBM Connect 2014 slidedeck on the IBM Social Business Toolkit SDK
Thu, Feb 6th 2014 10:14a   Serdar Basegmez
It's been a week after my session with Graham Acres. Sorry about the delay but we needed some time to prepare demo databases... Here is the slidedeck: And demo databases: https://github.com/sbasegmez/ic14demos [read] Keywords: ibm development
247


BP308 - The Journey to Becoming a Social Application Developer
Tue, Jan 21st 2014 5:09a   Serdar Basegmez
This is going to be my third IBM Connect and second session. Excited! Last year, my session co-presenter was my dear friend Bruce Elgort. I feel privileged this year again, because I am sharing the stage with a great speaker, Graham Acres... The session is all about the IBM Social Business Toolkit SDK, which has been first announced at Lotusphere 2011. After three years, we will see much more content about it this year. Since first hearing about the toolkit, I had trouble under [read] Keywords: connections domino ibm lotusphere notes xpages application applications integration java javascript openntf twitter




267


My previous blog post was ’Hot’!
Sat, Dec 7th 2013 2:47a   Serdar Basegmez
Yesterday, I have blogged about the renewal of my IBM Champion title. This morning I woke up with lots of notifications on my mobile. Apparently, my dear friend Bruce liked my blog post very much and he has posted it everywhere (Twitter, Facebook, Linkedin Google Plus). The real surprise was on PlanetLotus waiting for me :) Wow! I must be really famous and people want to know about my happiness. Thank you all! :) OK I'm joking. Many of you know it but for those who are not aware of [read] Keywords: ibm database facebook google linkedin mobile planetlotus twitter
285


Still part of it: IBM Champions
Fri, Dec 6th 2013 6:11a   Serdar Basegmez
Yesterday, Oliver Heinz and Joyce Davis announced IBM Champions of 2014. I have been recognized as IBM Champion for the third time but it's still exciting like the first time :) Congratulations to everyone, especially new champions. 2014 IBM Champions So proud to be listed here, with these fantastic people... But remember, there are many great people outside of this list. They might not have the title for this time but they are helping others and improving the value of the te [read] Keywords: connections foundations ibm community
174


Change is good...
Mon, Nov 18th 2013 5:22a   Serdar Basegmez
Yes! Change is good... For a couple of weeks, I've been working on Bootstrap and as I learn it, my blog became a great playground for me! It's still using Domino Blog template at the back-end but skin is completely renewed. I have not optimized for performance yet but I can tell you, our blog template is so powerful that I have not changed anything in the application design! Please share your thoughts and tell me if you see any problems! BTW, I can share my templates in case you [read] Keywords: domino application
228


Thank you Mr. Bruce Elgort...
Wed, Oct 2nd 2013 10:12a   Serdar Basegmez
Before writing this post I tried to remember when I have met Bruce for the first time. It was just 2.5 years ago when I received a twitter DM from him. I was at an airport in Germany waiting the boarding time. I remember had a short discussion over Skype. 2.5 years? Really? I feel like I know Bruce for decades. Bruce Elgort is one of the founders of OpenNTF, which is a very important initiative which bands passionate developers together, improves communication and collaboration within [read] Keywords: collaboration ibm lotus lotusphere notes blogger community openntf podcast skype taking notes twitter




Created and Maintained by Yancy Lent - About - Blog Submission - Suggestions - Change Log - Blog Widget - Advertising - Mobile Edition