Posted on Leave a comment

Object Oriented Programming OOP – a misnomer?

Programming has been somewhat of a hobby. It is sometimes useful to find a computational solution to otherwise tedious task. Some say that today, programming is becoming almost like a writing/reading skill. The concept of Object-Oriented Programming (OOP) is not straight forward to explain without a video or a few examples to someone who has never encountered it before. Briefly, “containers” or “prototypes” of sort are created in computer code and later modified for a particular purpose.

Typical example involves an explanation that “car” is an object and models of cars are sub-types of objects, all based on that main “car” object. So, a programmer writes a few lines of general code that are later re-used for a more specialized task. But, is “object” a good word to describe this concept? Dictionary definition of an “object” is that “object” is a material thing that can be touched, seen, smelled, pushed, pulled, etc.

“Object” in OOP is not really that material, unless we want to consider that potential energy of 5V to create “0s” and “1s” is somewhat material. In reality, the “object” in OOP is nothing more but a collection of logical and data states in computer memory.

Would “Logical Construct Oriented Programming” (LCOP) be better? Sounds a bit complicated.

Posted on Leave a comment

Finger Zoom in Adobe Reader on Surface Pro

For years, my tablet was an Android device. If some text in Adobe reader was too small, all I had to do is zoom over a paragraph using two-finger spread. The focus stayed on the paragraph immediately after the zoom. Does not seem like a huge computational problem: first get the coordinates of touchdown, then zoom, then re-center to keep the original touchdown in place. So, why or why does the same Adobe Reader wants to jump to the center of a page after zooming on Surface Pro? Now, it’s two actions: first two-finger zoom, then one finger slide back to where you were reading. And, if you happened to zoom too much, your original spot is not that easy to find. Perhaps, there is a setting somewhere in the deep preferences corners to solve this, but sure not easy to find, if it is there.

Posted on Leave a comment

Updates Utopia

As I am typing this post, my desktop is sluggish. Another update is going on in the background. As a matter of fact, in the last three days I mostly used desktop Windows PC, Windows tablet, and Android phone. My tablet forced an update that slowed me down last morning. My desktop updated a large program, which resulted in about 5-minute slow down. My phone seemed to always be updating something. And, it was just a matter of random chance whether my text app or maps or email on the phone were slightly sluggish because something was also updating in the background. There were random program update offers too. I was in the middle of doing something else at the time, but was sidetracked into getting “the new most advance and secure” version that looked identical to the old one in my naive “user view”.

So, from now on, I am updating my “terms of use” of all software out there that I am using. It would be in the best interest for our continued relationship that software provider is allowed to disturb me with updates only on the last Sunday of a given month at 3 am by my time, wherever I happen to be. This agreement will supersede any our prior agreements. This generous offer on my part will be replaced with a more restrictive terms of only twice a year update allowance, if software providers do not honor this agreement.

Ya right… this is going to work. Back to reality…

Posted on Leave a comment

Canon EOS Rebel T6 Camera Review

Canon EOS Rebel T6 camera is easy to use and relatively easy to learn. If you will allow the camera to do its magic and use only automatic features, the images will come out very nice. Of course, the manual mode is where fun begins.

Big letter “M” in the beginning of mode selection dial helps find the manual mode. Side of the lens that camera kit comes with also has a switch to change the lens into the manual mode. Shutter speed control is relatively easy to find as curved arrows make you look for the wheel just behind the shutter button, which will adjust it. ISO level has its own dedicated button, so not a big challenge there. Aperture control is the only one that is a little tricky. AV button has to be held down as the wheel behind the shutter button is adjusted to change the aperture.

If all else fails, the camera comes with a thick instruction manual. And, of course YouTube is helpful as usual.

Battery charged in two hours and seemed to last over two days of use with plenty of charge left. Transferring images was easy as well. Plug it into USB port and Windows 10 recognizes the camera without downloading anything.  A red light in the corner of the camera blinks when file transfer is taking place.

In summary, initial impression is positive. Canon did a good job on Rebel T6.

Tree shadows in water

Posted on Leave a comment

Unity 2018.2 Review

Unity 2018.2 is a game development environment that is a major development  platform in this field. There is a free version that is available for small aspiring game developers.

Installation is fairly straight forward, but like any other big package, takes a while.

An option to do tutorial right at the first start is a wonderful idea and I went ahead and clicked through the first two tutorials.

In all fairness, I so far, only spend an hour on this platform and will probably give it another chance. The points that are a bit confusing are the following.

The tutorial explains that GameObject is the primary point of interaction with this software. This is very understandable as Object Oriented Programming is ubiquitous everywhere. The tutorial also explains that GameObjects have Components. Ok, naming this whole set “Features” or “Attributes” may be a bit more clear, but it seems that each of the components has those as well, so we are at three layers of complexity here. Is each component an object within an object? Well, does not matter.

The really confusing part is “Assets.” Why are those separate? Why another layer of complexity? Unity Asset Store has some free models to download. Well, so far two different downloads did not work. Something happens, but way too quick. One of those deals, where you keep wondering if there was “Exception” type “please do not crash” code in there somewhere. Going back to the store and trying to download again results in “All assets from this package are already in your project.” Manually browsed to the Assets folder in the project, nothing there, except for the generic SampleScene stuff. Manual web pages did not help so far, as they seem to refer to some different 18.2 version from what got downloaded.

By the way, placing a project straight into Documents folder, at least on Windows 10, is not exactly an organized way of doing it. Having a separate working Unity folder would have been better.

So, overall, Unity seems to be functioning and probably worth a second look after some more tutorial viewing/reading. But, it is a good idea to check out the competitors before proceeding.

Posted on Leave a comment

Evolution of MOOCs

Massive Online Open Courses (MOOCs) are a relatively new invention. Pioneered by flagship educational institutions worldwide, MOOCs are now offered by many universities, colleges, and other enterprises, big and small. The usual topics that are covered by these courses are computer sciences, math and other basic sciences, marketing, and numerous others. Of course, quality varies, but in general, the courses were started by well established educators who were able to find time and resources to create cutting edge, high quality content.

Many high quality courses were free in the beginning. There was an option to pay for a verified certificate for some. As time progressed, the dynamics have changed. More and more courses are appearing that either put a time limit on free content, or require registration fee upfront. Some platforms always used paid models.  Now, even the platforms that had predominantly “free, open to all” type philosophy are being gradually changed.

This is natural. As users flood free platforms, operating and maintenance cost increases. As demand for content gets shaped by what students are looking for, more content needs to be developed.

It will be interesting to see how MOOCs evolve further. Will they become an advertising tool for colleges and universities to attract students or will they morph into new educational venues, where students will be able to get better knowledge in a subject, not a degree in a subject from a university.