Frustration on the day before Christmas

training-in-frustrationIt is the day before Christmas and I am very frustrated. About 6 weeks ago my right wrist and hand started aching something fierce. Eventually, last week my wife made an appointment with the doctor for me, which I attended. The doctor knows about my neck and back problems, but still thought that the problem is just because of overuse of my hand and that it is acute tendinitis that is affecting me. Because I am using Warfarin to thin my blood due to a DVT in my right leg, the doctor could not inject me with the strong stuff, as I am not allowed to use any anti-inflammatory medication. So, he gave me two cortisone injections. I had a previous DVT back in 2013 too.
 

Continue reading

Some useful online links

bookmarklogo

Over the years I have been collecting links to websites (URL) on all types of topics.

Topics that are covered range from anti-abortion, airplanes, history, Christian apologetics, computer/web programming, sport, Bible study material, Biblical Greek, photography, birds, blogging, theology, radio stations, climate “change,”  conservative news, colour palette design, GPS coordinate conversion, music, dementia/Alzheimer’s, file hosting, books, grammar, heresy, language studies, online Bibles, science and many more. This does however give you an idea of the diversity of topics available.

So, without wasting more of your reading time, you can visit my bookmarks page here. Maybe, just maybe, you will find something interesting!

Looking for a new multi-url link combiner

Best url shortener to create short urlI have been using bit.ly for many years as a link shortener. Some links can become really long, and so a link shortener can make it shorter and easier to use, especially for web apps like Twitter.

The really cool thing about bit.ly, was the fact that one could combine several shortened links into a bundle, which then had its own short link.

One thing about bit.ly is that one could change the default short link it created for your long link to something more readable, e.g. http://bit.ly/Ad5sYtvE could be changed to http://bit.ly/MoonBlog (these links do not actually exist, and if they do, it is by accident).

So, I would take the bit.ly bundle link (which now pointed to several links that I added to the bundle), and shortened that to something useful like http://bit.ly/NCT_Intro, which is readable. However, bit.ly changed the way they do things, and did away with the bundle idea and converted all bundles to tags. Now, when you create a short link (url), you can tag it, and if you click on one of the tags, bit.ly would display all urls that are tagged by the selected tag.

There is one HUGE difference between the bundles and the tags. The bundles had a url that was publicly available and could be shared with others not on bit.ly. The tags CAN’T! To me, that is the biggest drawback to the way bit.ly changed the way they do things.

shortenSo, I have started looking for a new service that could accomplish this.

I came upon this web page with some alternatives. The writer suggests KrunchdHiperURL, and MultiURL. I tried each one of them, and I am not happy with any of them.

Krunchd doesn’t work at all. I created a shortened url, and clicked on the url. I could see the url being used in the url/link edit bar, but within a few short moments it took me to a company’s website without ever redirecting to the links I created. This is a HUGE FAIL! It then offers you the opportunity to edit the links that you added to the shortened link. You simply request to modify the url, and it sends you an email with a list of shortened urls that you have created, with an edit link for each of them. At least, that is what it is supposed to do. I received an email alright! BUT, with no links next to the the headers. It is supposed to have the “Title of Krunch:”, the “URL:,” and the “Edit URL:”. All these headers were empty. BIG FAIL! It gets a 0/10.

HiperURL can combine urls into a shorter url, but it has no option of creating a readable url. It gets a 5/10. The reason it only gets a 5 is that it doesn’t make use of the names of links and just displays the links.

Finally, MultiURL is not working either. After entering the links and sign up info, it displays the following:

Fatal error: Call to a member function num_rows() on a non-object in /home/multiurl/public_html/system/libraries/Session.php on line 209″

passfailThat is a HUGE FAIL! It gets a 0/10.

There is the Google shortener, but it cannot combine nor rename shortened links, so it only gets 3/10.

So, while bit.ly had it all, they would’ve been in the 8-10/10 range, it now gets a 5/10 simply because it still provides analytics. Without the analytics it would drop below 5/10.

If you know of any GOOD url shorteners and combiners, please let me know!

The saga continues–mom and my hearing

My previous saga

hospital_smLast year was a fairly difficult year for me, landing in hospital 3 times, with one of those visits a real life threatening situation. The result is that I now permanently wear a full length medical compression stocking on my left leg.

My mom’s saga

Then, in the year or so before December 2013, we started noticing that my mom started forgetting things, and we thought it was just typical old age memory loss. That was until she put a microwaveable plastic container in the over to keep the food warm and it melted all over the oven. Then she flooded parts of the house because she simply forgot that she opened the tap in the kitchen or the bathroom.

So, I took her to a neurologist. After discovering that my mom was a smoker, he suggested we have her lungs checked for cancer. He explained that there is a part of the lung, if affected by cancer, could cause Alzheimer’s like symptoms. He referred us to an oncologist and she sent my mom for the necessary scans, etc., and a visit to the hospital for a biopsy. It turned out that he was correct, and she did have cancer of the lung exactly where he thought it would be.

By this time, my mom’s mind had gone so far that she gave the poor nurses a run for their money when she had to go in for a lung operation to remove the offending lobe. They eventually assigned a fulltime nurse just for my mom.

alzheimersSix weeks later my mom had to go in for a PET scan to verify whether the cancer was all gone, which was indeed the case. We also took my mom back to the neurologist for another test to see if her mental condition had worsened. It indeed did, and it was now also confirmed that my mom had Alzheimer’s.

She lived with us and it became more and more difficult for us to take care of her, since she was alone at home during the day. We were concerned for her safety and her well-being. So, we set out to find an Alzheimer’s home for her. It took some time to find a suitable place, which we did. It was insanely difficult for us to take her there and then to leave her behind (I do go visit her every weekend). So, we checked her in on 1 May 2014.

Since then her mind has worsened to the point that she doesn’t always recognise me. She’d be telling the caretakers all about her son, William, but when I get there she wouldn’t recognise me. She’ll have all kinds of stories when I visit such as what she and my dad have been up to. He’s been dead since 2000. This past weekend she asked me if I could please take her to visit her mom. She’s been dead since 2004.

It has been very difficult for me to see my mom like that. She used to be such a strong and independent woman. She ran the household and all the finances when my dad was still alive. Now she has to be checked the whole day, and she needs a caretaker to assist her when she needs the toilet. She also needs adult nappies. She is now a totally different woman than just 2 years ago! Yet, I visit her every weekend, take a chocolate for her to enjoy and perhaps a milkshake. Then I just let her talk about anything that is in her mind.

alzheimers-patients-prayer

My continued saga

cochleaFor a long time now I have been suffering from this continued high pitch noise in my ears (tinnitus). At the end of last year as I was researching this I discovered that it could be caused by many factors, and one of them was wax in the ears. It just happened that I had way too much wax in my ears. I visited a local Kind2Hearing practice where the wax in my ears were cleaned out. The tinnitus didn’t go away. So, I left it to see if over time my situation improved, but to no avail. It became so bad that it woke me up one night. I first thought I’d heard some noise outside, but the noise was so loud in my head I immediately recognised it for what it was.  Even if I put headphones on with music, I can still clearly hear the tinnitus noise.

I finally decided that I have had enough, and today I had an appointment at the same practice. It lasted for 2 hours. The young lady (Nadine Basson) that tested me did a thorough job, explaining before and after what she had done and why. It is no wonder that she did such an excellent job. In her final year of study she was awarded two prizes:

  • SASLHA Prize – Best final year student in Speech Pathology – Clinical
  • P. De V. Pienaar prize – Best final year student in Speech Pathology – Academic

handwithhearingaidI was indeed in good hands.

The result of the testing is that I have hearing loss in both ears in the higher frequency range. In the area where my hearing loss has occurred is also the area where words with “s, f and th” are found most frequently.

Anyway, the long and the short of it is that I need hearing aids for both ears to supplement my hearing in those higher ranges. At least it will help with minimizing the tinnitus while I am wearing the aids, and that will be a great relief.

Microsoft Visual Studio C++11 conformance

So, there I was, using Microsoft Visual Studio 2012 Express (MSVS1012Ex). What I wanted to do was test the range-for-statement as provided by Stroustrup in his book The C++ Programming Language, 4th Edition, on page 45, which describes the C++11 standard. The code is as follows:

range-for-statement

On line 16, MSVS1012Ex throws an error, “error C2059: syntax error : ‘{‘”. It does not know how to handle an inline instantiation of a list within the range-for-statement, even though it claims to have included it in its C++11 Enhancements. It included the normal handling of range-for-statements as shown from line 8-13.

So, I decided to download Microsoft Visual Studio Express 2013 RC (MSVS2013ExRC) to test the above, and I am happy to say that MSVS2013ExRC can handle lines 16-19 in the code above.

C

The C++ Programming Language, 4th Edition

4thCppYesterday, I bought myself the ePub eBook of the 4th edition of Bjarne Stroustrup’s The C++ Programming Language. For those who do not know, Bjarne is the originator, the one who gave birth to the C++ programming language ±30 years ago. The 4th edition of the book covers the newest standard of the language, commonly referred to as C++11.

For the past three years I’ve been programming in C#, and so I decided to pick up C++ again (I programmed in it from 1994-2010; 16 years). From the time that I started with C++ back in 1994, a lot has changed in the language, hence, the need to get the new edition of the book with all the changes related to C++11.

I originally had the third edition of the book, which was published way back in 1997. For some reason, I cannot find that edition in my study anywhere. The third edition of Stroustrup’s book eventually also became the foundation of the original C++ standard in 1998 and became known as C++98.

Bjarne StroustrupAnyway, I am really happy to have the new edition, since there have been many new and useful updates to C++11. Bjarne writes concerning the new C++11 language features,

“The result has been a language with greatly improved abstraction mechanisms. The range of abstractions that C++ can express elegantly, flexibly, and at zero costs compared to hand-crafted specialized code has greatly increased. When we say “abstraction” people often just think “classes” or “objects.” C++11 goes far beyond that: The range of user-defined types that can be cleanly and safely expressed has grown with the addition of features such as initializer-lists, uniform initialization, template aliases, rvalue references, defaulted and deleted functions, and variadic templates. Their implementation eased with features, such as auto, inherited constructors, and decltype. These enhancements are sufficient to make C++11 feel like a new language.

For a list of accepted language features, see the feature list.”

He further writes concerning the new C++11 libraries,

“I would have liked to see more standard libraries. However, note that the standard library definition is already about 70% of the normative text of the standard (and that doesn’t count the C standard library, which is included by reference). Even though some of us would have liked to see many more standard libraries, nobody could claim that the Library working group has been lazy. It is also worth noting that the C++98 libraries have been significantly improved through the use of new language features, such as initializer-lists, rvalue references, variadic templates, noexcept, and constexpr. The C++11 standard library is easier to use and provides better performance that the C++98 one.

For a list of accepted libraries, see the library component list.”

So, I have read the first 36 pages and still need to cover 1332 pages.

Here are a couple of C/C++ funnies:

auto accident;
register voters;
static electricity;
struct by_lightning;
void *where_prohibited;
char broiled;
short circuit;
short changed;
long johns;
long dong_silver;
unsigned long letter;
double entendre;
double trouble;
union organizer;
union jack;
float valve;
short pants;
union station;
void check;
unsigned check;
union onion; more at GNU.org

Here is a fun piece of code to ponder (What is the answer here?):

int a = 5;
int b = a++ + ++a;

And, lastly, something that many new programmers struggle with,

“To understand recursion, you must first understand recursion.” (See the
cplusplus forum)

pointers

Driving in South Africa: a pet peeve

I do not write about my pet peeve a lot. I have written about it here, here, here, here and here. Smile

When it comes to the driving of South Africans, in my opinion, I think we are of the worst drivers in the world. Not just in terms of handling our cars, but also in driving attitude.

road-rage-lisa-knechtel
Road Rage by Lisa Knechtel

One of my pet peeves is that some drivers drive as if they have an absolute right to the road and they will drive in which ever lane they want to at whatever speeds they want to. It is becoming very common for slow road users to insist on driving in the right hand lane (the fast lane). For those who claim that we do not have a fast lane, explain to me why the rules of the road say: Keep Left Pass Right? This is to enforce the free flow of traffic, so that some numb-skull does not hog any lane and thereby slowing traffic down.

In fact, this behaviour is becoming epidemic to the point that some drivers, no matter how slow they are, will drift to the right-hand lane and will not budge for any amount of cars getting stuck behind them. This is selfishness to the extreme, and it points to a personality that has not reached maturity yet!

Continue reading

%d bloggers like this: