T h e C o d e R a n c h J o u r n a l - J U L Y . 2 0 1 9 E d i t i o n
Howdy from all the CodeRanch staff, and welcome to the July 2019 edition of the CodeRanch Journal.
W h a t ' s N e w?
* As usual, our Posse leader (Devaka) produced some fine novelties and improvements. Devaka always wears a white hat, and any varmints are in for some hard times!
Unfortunately Devaka has been very busy for the last few weeks. The Ranch software has run very slowly on occasions recently, which we are very sorry for. We greatly appreciate Devaka's work and others' getting us up and running. Over ten years ago, we transferred the website from the old UBB software to JForum. Unfortunately Devaka has found a potential problem: does JForum work correctly if the same person logs on from two devices? Maybe most people only had one computer when JForum was developed; if you know better than we do, please tell us. But most people have several devices they can log on with nowadays. Whether that has caused the problems we have suffered, I don't know. It may constitute a vulnerability to spammers, which we are always try our hardest to head off at the pass.
* I don't think it was the fiftieth time Thaddaeus, the Moose, wore his spacesuit to stand on the moon this month, but many people will have watched the landing on catchup TV, video websites, etc. I didn't. Remembering it from about two seconds after it actually happened is enough for me!
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
* I used to teach a bit of logic; the language of logic is one of the oldest still in common use, going back to the Ancient Greeks. This thread goes back to something nearly as old, the legend of Jason, where one of his challenges is how to behead the Hydra. How do you behead a Hydra in Python?
* How do you replace a Key in a Map, and retain the order of insertion of the K‑V pairs? I don't remember ever seeing exactly that problem before, but somebody asked about it in his only question to date, I made some suggestions; do you readers have anything helpful to add?
* I am disappointed to see that many old misconceptions are alive and kicking. Are there any books or websites around saying that a hash code represents the memory location of an object? We tried to address that misconception here, as well as explaining what a hash code really is.
* We often complain about seeing requirements which aren't clear, or written all in computer‑speak, so one of our mods was very pleased to be able to commend one of our users for posting his requirements so clearly.
To the OPs: thank you for your quality posts, you all will be rewarded with a well-deserved cow!
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. Any posts, indeed, except “welcome” posts, might win you the book.
Our most recent book promotion and its winners can be found below:
Did we really only have one promotion in July? I remember we missed one promo because the American (USA) people spend the 4th of July remembering how they widened the Atlantic to get as far away from us English as possible
But, nil desperandum; we have, at the time of writing, Reactive Spring by Josh Long, Cloud Native Patterns by Cornelia Davis, Natural Language Processing by Hobson Lane, Hannes Hapke and Cole Howard, Deep Learning for Search by Tommaso Teofili, Event Streams in Action by Alexander Dean and Valentin Crettaz, Phoenix in Action byGeoffrey Lessel, and last but not least, The Java Module System by Nicolai Parlog, seven of them, all planned to start before the next journal is due. In case there are any changes, look here: Book Promotion Schedule
We are very grateful to the publishers and authors for supplying the books and answering our questions. B o o k R e v i e w s
Please check out the latest reviews (also available on our book review grid: Book-Review-Grid)
B o o k S a l e s
* The publishers often make books available at a discount. If you are quick, and the Journal gets to you soon enough, you might be able to buy “MEAP” books at Manning at a discount (until 31st July). Packt are also advertising discounts at present. Consider signing up with the publishers because they send emails with the latest offers. I suspect that other publishers have similar deals, but I only know about the two I mentioned. One book which I bought recently at such a discount is by Vladimir Khorikov, Unit Testing. Unit testing is probably one of the most commonly‑used ways to verify a program; if you aren't familiar with it, look at this intrpoduction which Paul Wheaton, our trailboss, wrote some years ago. I am sure the principles haven't changed.
Some publishers will sell incomplete eBooks, and readers are allowed to comment. I know a few of my comments have been incorporated in the final printed book. T h e M o o s e o n S o c i a l
The CodeRanch announces latest news/developments frequently on our social media outlets. You can find us at:
I made a daft mistake in my first post, back in 2005, and had to eat humble pie about it. But they still invited me to be a mod back in 2008, something I still look on as a great honour.
There I was, wondering why my shapes wouldn't go beyond the edge of the panel, and eventually remembered I had programmed the Graphics object not to draw anything with negative pixel numbers. The people helping me were very gracious when I confessed my mistake (thank you).
My next mistake, a few weeks later: After spending an hour explaining what I knew about sin and cos from the last time I had sat a Maths exam, I realised I would see the other person involved the next day. So I explained it to Joseph, and told him earnestly to calculate x + rsinθ and x − rcosθ Our teacher just came and looked over Joseph's shoulder as he ran the program with his clock turning resolutely backwards, so I thought I ought to confess I had made a mistake. I hope nobody thinks I did it on purpose.
S u g g e s t i o n s / F e e d b a c k If you have any feedback on this month's journal then feel free to create a topic in our Ranch-Office