Ron McLeod

+ Follow
since Feb 12, 2013
Ron likes ...
Android Eclipse IDE TypeScript Redhat MicroProfile Quarkus Java Linux
Richmond, BC, Canada
Cows and Likes
Total received
In last 30 days
Total given
Total received
Received in last 30 days
Total given
Given in last 30 days
Forums and Threads
Scavenger Hunt
expand Rancher Scavenger Hunt
expand Ranch Hand Scavenger Hunt Green check
expand Greenhorn Scavenger Hunt

Recent posts by Ron McLeod

After over a year's lapse, we decided to re-invent the Journal.  It is now an "editor's picks" format brought to you by the staff of JavaRanch.  Read what your favorite moderators think is hot!

  • November 2021 Journal
  • August 2021 Journal
  • July 2021 Journal
  • June 2021 Journal
  • May 2021 Journal
  • April 2021 Journal
  • February 2021 Journal
  • January 2021 Journal

  • 2020
  • December 2020 Journal
  • November 2020 Journal
  • October 2020 Journal
  • September 2020 Journal
  • August 2020 Journal
  • July 2020 Journal
  • June 2020 Journal
  • April 2020 Journal
  • March 2020 Journal
  • February 2020 Journal

  • 2019
  • November 2019 Journal
  • October 2019 Journal
  • September 2019 Journal
  • August 2019 Journal
  • July 2019 Journal
  • June 2019 Journal
  • May 2019 Journal
  • April 2019 Journal
  • March 2019 Journal
  • February 2019 Journal
  • January 2019 Journal

  • 2018
  • December 2018 Journal
  • November 2018 Journal
  • October 2018 Journal
  • September 2018 Journal
  • August 2018 Journal
  • July 2018 Journal
  • June 2018 Journal
  • April 2018 Journal
  • March 2018 Journal
  • February 2018 Journal

  • 2017
  • December 2017 Journal
  • November 2017 Journal
  • October 2017 Journal
  • September 2017 Journal
  • August 2017 Journal
  • July 2017 Journal
  • June 2017 Journal
  • May 2017 Journal
  • April 2017 Journal
  • March 2017 Journal
  • February 2017 Journal
  • January 2017 Journal

  • 2016
  • November 2016 Journal
  • October 2016 Journal
  • September 2016 Journal
  • August 2016 Journal
  • July 2016 Journal
  • May 2016 Journal
  • April 2016 Journal
  • March 2016 Journal
  • February 2016 Journal
  • January 2016 Journal

  • 2015
  • October 2015 Journal
  • July 2015 Journal
  • May 2015 Journal
  • April 2015 Journal
  • February 2015 Journal
  • January 2015 Journal

  • 2014
  • December 2014 Journal
  • October 2014 Journal
  • July 2014 Journal
  • June 2014 Journal
  • May 2014 Journal
  • April 2014 Journal
  • March 2014 Journal
  • February 2014 Journal
  • January 2014 Journal

  • 2013
  • December 2013 Journal
  • October 2013 Journal
  • September 2013 Journal
  • August 2013 Journal
  • July 2013 Journal
  • January 2013 Journal

  • 2012
  • September 2012 Journal
  • August 2012 Journal
  • July 2012 Journal
  • June 2012 Journal
  • March 2012 Journal
  • February 2012 Journal
  • January 2012 Journal

  • 2011
  • October 2011 Journal
  • August 2011 Journal
  • July 2011 Journal
  • June 2011 Journal
  • May 2011 Journal
  • April 2011 Journal
  • March 2011 Journal
  • February 2011 Journal
  • January 2011 Journal

  • 2010
  • December 2010 Journal
  • November 2010 Journal
  • October 2010 Journal
  • September 2010 Journal
  • August 2010 Journal
  • July 2010 Journal
  • June 2010 Journal

  • 2009 and earlier Journals
    2 days ago

    T h e . C o d e R a n c h . J o u r n a l  -  N o v e m b e r . 2 0 2 1 . E d i t i o n

    A big howdy from all the CodeRanch staff, and welcome to the November edition of the CodeRanch Journal.

    N e w . B a r t e n d e r s
    Congratulations to our two new Bartenders: Jesse Silverman and Al Hobbs.  Thanks for your great contributions to CodeRanch.

    I n t e r e s t i n g . C o d e R a n c h . F o r u m . P o s t s
    Here's some threads from this month that are worth giving a read:
  • Composition vs Strategy Pattern
  • Best approach for structure of a Swing App?
  • Not the last word on finalize
  • Is this version of the Abstract Factory Pattern Pretty Backwards?

  • Thanks to vishnu priyag, Antonio Moretti and Jesse Silverman for starting these topics and everyone else that joined in for the discussions.

    B o o k . P r o m o t i o n s
    There's a book (or software) promotion just about every week at CodeRanch. Just ask a question in the appropriate forum and you're eligible to win a copy of the book (or license).  Check the book promotions schedule

    Book promotions in-progress:
  • Head First Android Development (started November 30th)
  •        Dawn Griffiths and David Griffiths
          If you have an idea for a killer Android app, this fully revised
          and updated edition will get you up and running in a jiffy.

    Upcoming promotions in December:
  • Terraform in Action (December 7th)
  •       Scott Winkler
          Use Terraform to programmatically create, test, and manage
          infrastructure using the efficient infrastructure-as-code

  • Beginning IntelliJ IDEA (December 14th)
  •       Ted Hagos
          Get started quickly with IntelliJ, from installation to
          configuration to working with the source code and more. This
          tutorial will show you how to leverage IntelliJ’s tools to develop
          clean, efficient Java applications.

    This month's book promotion winners:
  • Node.js Design Patterns
  •       Winners: Albareto McKenzie, Salil Wadnerkar, Stephan van Hulst and Jon Greenwood
  • The TypeScript Workshop
  •       Winners: Mike Payne, Timothy Gallagher, Don Horrell and Jonatas Silveira de Andrade
  • Practical Cloud-Native Java Development with MicroProfile
  •       Winners: Randy Tong, Ron McLeod, Shai Almog and Marouane Trabelsi

    And a big Congratulations to our past Winners

    T h e . M o o s e . i s . L o o s e . o n . S o c i a l . M e d i a
    The CodeRanch announces latest news/developments frequently on our social media outlets. You can find us at:

  • Follow / Like us so you don't miss a thing.

    O u r . S t a f f
    Thanks to all staff that volunteer their time and share their knowledge to make this site the friendliest place on the web to learn.  A special thanks this month to the following members ...
  • Marshals: Campbell Ritchie · Paul Clapham · Ron McLeod · Tim Cooke · Junilu Lacar
  • Sheriffs: Rob Spoor · Devaka Cooray · Jeanne Boyarsky
  • Saloon Keepers: Jesse Silverman · Stephan van Hulst · Tim Moores · Carey Brown · Tim Holloway
  • Bartenders: Jj Roberts · Al Hobbs · Piet Souris

  • A b o u t . T h e . E d i t o r
    Ron McLeod has been a member of CodeRanch since 2013 and a Moderator since 2015.

    J o u r n a l . A r c h i v e
    Our previously published journals are available online at:

    We've lowered the cost of advertising at CodeRanch.  Visit for details.
    2 days ago

    obaid abbassi wrote:i m still getting the value of btn1 not btn2

    Did you read Roland's comment?

    Roland Mueller wrote:Just come to my mind: when btn1 has no value request.getParameter("btn1") should return null, and calling equals() on result should cause an null pointer exception. Thus, second check for btn2 is not reached.

    3 days ago

    tangara goh wrote:... I trawled the internet but I can't get a confirmed answer.

    I did a Google search for xjc and the first response I got was this:
    Java Platform, Standard Edition Tools Reference: xjc

    Someone at Oracle wrote:-p pkg

    When you specify a target package with this command-line option, it overrides any binding customization for the package name and the default package name algorithm defined in the specification.

    4 days ago
    Piet -- I like your solution better.

    Just curious why you put the predicate in a takeWhile method rather than include it as a parameter in iterate -- to make the code easier to read?
    5 days ago

    Stephan van Hulst wrote:... Combining these two maps with putAll() will simply overwrite all sublists collected by thread 1, and return a map that is equal to the map collected by thread 2.

    Thanks.  I was able to produce that scenario with parallel().

    The combiner in the code below resolves that issue.
    5 days ago
    I was looking at the Iteration to create chunks and save it thread, and thought about how I would implement something similar with streams.

    I decided to collect the items in to a Map with an entry for each sublist and Integer keys, and then return just the map values, providing a Collection of Lists.  I used a LinkedHashMap to preserve order.  I does work as expected, but I'm thinking there might be a better way tackle this.

    5 days ago

    Campbell Ritchie wrote:... Use the List's Iterator in a loop, and its remove method

    Wouldn't that still result in a ConcurrentModificationException?
    6 days ago

    Tim Holloway wrote:I'm still waiting for someone to start a national chain of "Arabic" sandwiches.

    Like shawarma?
    1 week ago

    Paul Clapham wrote:It would be interesting to find out what the correct translation of that Chinese phrase was ...

    According to GooleTranslate 金槍魚 丹麥語
    金槍魚 is Tuna, and 丹麥語 is Danish
    1 week ago
    Canadian A&W split-off the US counterpart some time in the 70's, and the two really don't have much in common other than the logo.  A&W here is a private company located in the Greater Vancouver area.

    For fast food, the taste and quality of the food at the Canadian restaurants are quite good.
    1 week ago
    True - TLS doesn't prevent DNS spoofing, but unless the spoofed-to location has a valid certificate for the site, the TLS connection will fail.
    1 week ago
    I'm Canadian - should I be excited?

    I've passed-by these in London, but have never gone in.  It sounds like they are the UK equivalent of a Starbucks.

    1 week ago
    ... would not include Tuna

    Seen today at a bakery in Richmond Centre Mall, Richmond, BC, Canada
    1 week ago