Friday, July 14, 2017

Source code revision control with Git


Version control system is used to manage versions of files and is used widely with programming source codes. Common examples are SVN and Git.

Here is an example of the using GIT with Heroku (Working with GIT2). It demonstrates the git command for;
  • clone
  • branch
  • checkout
  • commit
  • status

Basic commands to manage a local version control repository

Typical process to prepare a folder where files are to be tracked/staged uses the commands init, status and add. It would be good to have created a folder with 4 or 5 files and try out the following commands.
 # Initialise Git repository   
  $ git init   
     
  # Identify status and which files are being track or untracked.   
  $ git status   
     
  # Add all files to the repository   
  $ git add .  
   
 # Identify files are being track as staged  
  $ git status   

At this time, a folder to manage the repository is created with the name ".git". Have a look at content of the files in this folder.

Filename: .git/HEAD
ref: refs/heads/master

Filename: .git/config
[core]
repositoryformatversion = 0
filemode = false
bare = false
logallrefupdates = true
symlinks = false
ignorecase = true
hideDotFiles = dotGitOnly

Filename: .git/description
Unnamed repository; edit this file 'description' to name the repository.


To remove a file from being tracked.
 # Remove a file from list of staged files  
 $ git rm --cached somefile.txt.  

Process to place files into the repository.
 # Commit files to repository  
 $ git commit -m "Place comments here"  
   
 $ git status  

Retrieve tracked file from the repository. The latest thats found in the repository, that is.
 # Checkout a file from the repository  
 $ git checkout programming.txt  
   
 $ git status  

Cache and other files that should not be kept in the repository or tracked, can be listed in a file ".gitignore" within that folder. Example to ignore the folder "temp" and file "nofile.txt".

Filename: .gitignore
/temp
nofile.txt

end

Wednesday, June 21, 2017

Open Source Software Leads Growth of Deep Learning Community

Faster CPU and GPU computers have arrived and AI computing is becoming available to more people. Amazon and Google are already rolling out services that allow anyone access to the computational resources required for AI, in particular deep learning. I am looking forward at how this will be incorporated into the next gen of personal devices.


There are too many areas to discuss on this, but here I would like to mention that deep learning is catching up fast on the open source software (OSS) environment.

GPU deep learning with NVIDIA provides a good start. They even have a whole section devoted to deep learning;

https://www.nvidia.com/en-us/deep-learning-ai/education/

A quick guide on deep learning is available at Deep Learning Introduction.

Thursday, June 1, 2017

The Day British Airways System Crashed in 2017

Waiting to hear the cause of it. How difficult is it to start up the back up process?

Source https://www.thesun.co.uk/news/3669536/british-airway-it-failure-outsourced-staff/


Pentaho 7 Community Edition

Summary of their licenses.

With big data and increase interest in business intelligence, there seems to be many software out there to suit all your needs. As for OSS licensed, the name Pentaho have been around for a long time. Here is a little note on their licensing.

Pentaho Business Analytics Platform 2, Pentaho Reporting Engine and Pentaho Report Designer are licensed as GPL v2.

Pentaho Data Integration or Kettle is license as Apache version 2.0. Details are found at  their wiki.

There is an interesting and comforting public post on Kettle license at Pentaho Forum with regards to Pentaho licensing.

Community Edition

Pentaho 7.1 is currently available but there is still the community edition, and my notes on Howto install is available only for the Linux server.



The additional known components that enterprise have and community edition doesn't is the self service designer dashboard and interactive reporting. Still searching for comparison of the community edition and other BI tools in the market.

Thursday, April 20, 2017

Mouse Cursor Disappear in Chrome Web Browser

Google Chrome is among the web browsers that I use frequently on MS Windows 10. Chrome provide many standard web browser features, security and option to extend its capability via plugin extensions. Work productivity goes up a notch when many application windows are launched to run concurrently. The monitor screen is big enough to allow re-positioning of the windows, overlapping windows and minimizing of windows.

On 20th April (today), the mouse cursor disappears when its moved over the Chrome window. It appears back when the cursor is moved outside of the Chrome window area. Moving the cursor again on Chrome window area, its noticeable that an invisible cursor is moving as hyperlinks light up, menu and buttons get active and the standard windows minimise and maximise buttons can be accessed.

A quick search on the internet shows that this problem have occurred way back in June 2014. Its almost the same thing, and issue only started after a MS Windows update that had occurred the day before. Yes, there was a Windows 10 updated yesterday.

Solution is to disable the Hardware Acceleration in Chrome. Here is how to get that cute cursor back on Chrome.


Step 1: Open Chrome web browser (if its not already open).

Step 2: Click "Customise and control Google Chrome" or the "3 vertical dots" button. Its usually at same row as the URL bar. Choose "Settings", scroll down and click "Show advanced settings...".

In the section "System" uncheck Use hardware acceleration when available. Close Chrome and launch Chrome or restart Chrome.

I have not found out if its due to MS Windows change in its settings or Chrome settings changed. Maybe someone out there have an answer.

Tuesday, February 21, 2017

Cloud storage for Linux PCs

Having your resume, project files, assignments and other documents stored on the internet cloud is now a much more acceptable norm. Previously there were fears on privacy of the files from the providers and governments, possibility of the account being hacked or just plain poor software and hardware to protect integrity of the documents.

As cloud storage gain acceptance, there are more options available. Among the popular storage are Dropbox, gDrive and ownCloud as listed here.


Compare Dropbox gDrive OwnCloud
Storage (FREE) 2GB. Offers available up to 16GB 15GB. Include Google accounts like Gmail. Unlimited, provide your own
Availability Integration with MS O365, OneLogin, 1Password, MS Azure, Xero.
available Offline
Pretty much everything works with Google and Google Realtime API.
Available offline
Unlimited.
Not available offline
Features (General)
  • Accessible by main stream devices
  • Automatic updates
  • File sharing
  • Offline access
  • 256-bit AES encryption keys. 128-bit AES SSL/TLS encryption for files in transfer

  • Accessible by main stream devices
  • Automatic updates
  • File sharing
  • Offline access
  • File versioning
  • 128-bit AES encryption keys. 256-bit SSL/TLS encryption for files in transfer
Web based. 3rd party apps are available for wide variety of devices.

  • Open source licensed AGPLv3
  • File sharing
  • Comments and tagging
  • Versioning and undelete
  • Flexible external storage handling
  • Integration of anti-virus scanning

Its a matter of balancing your resources, needs and funding when deciding which services to take up.


Dropbox provide one of the most fancy looking and good security.

Google gDrive comes with a host of applications like Google Sheets, Docs, Presentation to open your documents on a PC and mobile devices. Truly any time, any where documents are available.

OwnCloud allows any individual and corporation to customise, design a security of their choosing and include branding with use of their own storage. With more controls, security exploits such as man-in-the-cloud attack can be avoided. Did I mention, you install the whole thing for FREE on your own (your ownCloud....get it)?

Wednesday, February 8, 2017

Howto start Programming with Laravel

With the announcement Laravel 5.4 is released on 24.1.2017, a better PHP programming framework is now available. Here is how you can start programming with Laravel 5.

What is Laravel 5?

Its a PHP programming framework. Yes, you still need to know PHP programming. This framework allow quick creation of a CRUD application and connection to a database to store data. Lots of work have been done for you to complete standard task BUT it requires you to adhere certain styles and syntax. These you MUST learn in order to appreciate the power of Laravel framework and the learning curve is NOT steep.

From laravel.com get more information on what is Laravel, browse examples and then install Laravel framework. Once installed, open a command line terminal to create a new project framework.

Laravel have a tool called artisan to do all the wonderful stuff of the framework. Here is an example to display Laravel version.


Getting help

The installed framework comes with its own description of its command tools. To access this, open a command line interface and type;

 $ php artisan --help  

or to display for a specific command

 $ php artisan help serve  
 $ php artisan help migrate  

List to find further help can be found at Laravel and Getting Help.




Monday, January 23, 2017

Copyright photography laws impeding civilization growth?

Did you know that you need permission and probably make a payment to take a picture of the light display at Eiffel Tower in France? As social media continue to grow, more people will post photos of their trip to the Eiffel Tower.

How can you LEGALLY share your photo of the Eiffel Tower at night? Its simple, you must gain permission from Societe d'Exploitation de la Tour Eiffel.

Tourist: Whoaa....you mean I can't even share my holiday trip photos to my friends?

Tour guide: Sure you can. Take photos of Eiffel Tower in the daytime. You can publish a photo of Paris city scene where the Eiffel Tower appears. Those, you can share. Please be reminded, the same goes for Louvre's pyramid in Paris.

Tourist: I guess everyone's got to earn a living. Hope the artist gets some of the earnings from the copyright.

If its a private place like a home or a club, I can understand photography restrictions due to copyright issues. Soon tourist and business trip to these places would require you to wear special glasses to restrict vision of these copyrighted places. Kind of peculiar for people to soon think of no reproduction by camera, smart phone, drawing or even thinking about it copyright laws.

Are there other countries with similar copyright laws on photography of public places?

Its almost like being in a tyrannical state, right? but wait, because its widely implemented in Europe, groups have people have been working on changing these limiting laws. Currently, an exception to these copyright laws are being published on Wikipedia by Freedom of Panorama (FOP).

Learning through photo sharing experiences is so easy. To some, going to Paris might only be a reality through the Internet.