Posts

What you can do with one cheap lousy camera

Image
National Geographic prides itself in sending photographers armed with tens of thousands of dollars of equipment across vast distances to take great pictures. Big deal! I think it's a bigger challenge to see what you can capture from one spot on planet Earth , with just one cheap lousy camera. What you see here are pictures all taken from one place, my home. From the meta data you can tell that a cheap Nikon was used before 2007 and a cheap Canon was used after that. Both are below $300 and not SLRs , and if cameras with those specifications are still built today, they would probably cost $50. In the pictures shown here: All are real living things, except for the thing in the sky and the paper snake, the latter taken by a 5-year old. All are taken in their natural environment except for one, and that is the civet cat which is caged. All living things are live (other than the obviously dead lizard which was not the subject anyway) and in their natural pose except for one.  S

Setting up a simple mail server, on a Raspberry Pi

SMTP, has its name suggests, is simple. It is, really is, until you have a need to deploy one yourself today. It was way easier twenty years ago when the Internet was a benign place, and every Windows XP came with a solid SMTP server out of the box, and enabled for unrestricted relay for all! In this age of abundant cloud services, why would one still need to set up your own MTA? In my case, it was because of the limited SMTP capability of a couple of (very) old webcams I have. One works only without encryption. One works only if the password is less than 64 characters. SendGrid is a reliable free service for up to 6,000 mails a month. But it uses a super-long password. My intention was to use SendGrid as the relaying MTA ("smarthost") because of its sender reputation . It is easy to configure an MTA to do the actual delivery, ie make it connect to the MX server of every addressee in each mail and deliver the mail. However, such mails sent will likely be treated as spam

ASUS K501 Laptop - booting off a thumb drive and making the M.2 SSD C:

I have a brand new Asus K501U laptop. It comes with a measly 16GB m.2 SSD (D:). I am glad for that because it means not paying an expensive premium for more. Windows 10 was on 2.5" 1TB hard drive (D:), and it was almost unusable (after having been using a SSD for Windows for more than a year) with the non-stop disk thrashing. It was a 30-second wait for the Start menu to show after pressing the Windows key. I bought myself a Samsung 850EVO 500GB SATA M.2 for less than US$200. It installed easily (I took the risk of leaving the battery online because I couldn't figure out how to remove that battery connector) and it was totally compatible. Asus kept reminding me that installing my own M.2 SSD voided the warranty. However, there were no stickers or seals so I could put back the original 16GB one if I ever need to seek servicing. My goal was to use the M.2 SSD for Windows (C:) and then to move the 2.5" 1TB SSD  with my data over from my old PC. The darn thing was tha

Supplementary Documentation for Facebook Messenger Platform

Reference: https://developers.facebook.com/docs/messenger-platform Handle all data types in the callback There is only one callback url for all Messenger events. The type of callback (for example when a message is submited by a user to your page) is determined by the data payload attached to the POST callback to your url. There is no clearly obvious field in the data to identify the type of callback. It is necessary to unravel the json object received to figure out what type of callback it is. Depending on the language you are using for your web coding, it may be straightforward or complicated to even find out which json class the payload belongs to. The Facebook documentation does not specify the various json formats the Webhook can send. It merely gives one example each of the five types listed. There is minimal or no description of what each data field mean. You are expected to figure out from their English field names. Design your code to handle gracefully all json data

DANGER - Facebook Messenger

Imagine your email software has this feature: As you are reading an email you are corresponding with person A, there is a Add button. By clicking it and selecting another person B, all the emails you have with person A in the past are immediately forwarded to person B, without warning. The email forwarding is executed virtually. Instead of physically forwarding each mail one by one to person B's mail server, basically your mail software gives access to Person B, at his own leisure, to browse EVERY of your email with person A. If you had done this by mistake, there is no process to cancel because the "forwarding" process is complete the moment person B is selected. There is no Undo option. You can scream and run round the room, but person B will continue, at any time in the future, to be able to read EVERY single email you had with person A. If you are a careful person that would never do such a silly thing, person A could click the Add button and the outcome will be

DO NOT USE FACEBOOK MESSENGER for group messages

Unless it's OK for your EVERY message to be published to the whole world, Facebook Messenger must not be used for any group conversations. I am referring to Facebook chat groups, not Facebook groups. There are basically no options to control Facebook chat groups. Any member of the conversation can add any person, Friend or not, to an existing conversation! So, even if there were no ill intentions, an accidental addition of someone else means TOTAL COMPLETE leakage. Even if you Remove that unintended person immediately, that person can view the WHOLE conversation, every message , since the group was created. There is no way to stop this . In the first place, while you can easily Add a person to a conversation from www.messenger.com, there is no way to Remove him or her on this same site. You have to do it from the Messenger app from the phone or facebook.com. Removal of a participant merely stops new messages from going to that person. He or see can still continue to se

The Gap

I did not take out my calculator when I wrote this, but I think it will help a skeptical world if we can gather more evidence of what happened between 4,000B.C. and 3,000B.C. Which of and how did Shem, Ham or Japeth become your great, great... grandfather? How did the two kangaroos on the ark land in Australia? The answers are meant and waiting to be discovered.  "It is the glory of God to conceal things, but the glory of kings is to search things out." - Proverbs 25:2 ESV