Thursday, February 23, 2017

Moved! Please follow my new stories on Medium at pacroy.com

I have fallen in love with Medium.com due to its simplicity and clean design. The feature that I love is that you can highlight any texts on articles for later reference and those highlights are even shared to other readers.

I usually make highlights the article or stories I read to capture key points and interesting ideas/quotes which I can come back and refresh those ideas later. In Medium, it even can display the list of your highlights and bookmarked articles so you can come back and see them all easily without clicking into each article.

Please follow my new stories and articles on Medium.
All blog posts here in Blogspot have been imported into my Medium.


😊😊😊😊😊😊😊😊😊😊😊😊😊😊

Sunday, January 29, 2017

How to use Git Client to Trace Commit History

Git is good to keep track of your code changes, especially if you do commit every time you proceed each step when you do Test-Driven Development (TDD). Moreover, you can share to others on how did you do TDD step-by-step with explanation in the commit message.


Before starting with Git, get yourself familiar with it first from this blog: Learn Git within 7 Minutes and Play Around with It. Or you can follow steps below on how you can use Git client to track code changes.

Saturday, January 21, 2017

A Few Exercises for You to Practice Test-Driven Development (TDD)

From the TDD training class I attended last December, there were workshops with interesting exercises which I think it would be useful for everyone who new to TDD to practice or want explore the feeling of TDD.


There a lot of Kata for you to practice TDD out there. But if you don't know which one to start with here you can take these as your first 3 exercises. Good luck and enjoy TDD!

Sunday, January 8, 2017

Setting up SAP ABAP/BW/HANA 7.50 Platform in Microsoft Azure

This blog post is available on Medium. Click here to see this story on Medium.

If you want to have fully-functional SAP platform to try out ABAP, BW, HANA DB, SAPUI5, etc., this guide will show you how to setup SAP NetWeaver AS ABAP and SAP BW 7.5 SP01 on SAP HANA SP10 [Developer Edition] on the Azure. (AWS option is also available)


Before you start, make sure you have a Microsoft Azure account with an active subscription. Please note that the SAP platform is free to try with 90-day license but you have to pay the cloud for using their resource. If you have a MSDN Pro/Enterprise subscription, you are able to claim Azure free credit $ from this page.


Once you have Azure ID and subscription, then you are good to go:

Saturday, January 7, 2017

Two Versions of ABAP Syntax Highlighting in Notepad++

This blog post is available on Medium. Click here to view this story on Medium.

It was quite confusing for me before I figured out that the User Defined Language (UDL) in Notepad++ have 2 different versions i.e. v1 and v2 which are not compatible with each other as well as the UDL XML file used for import/export.


In Notepad++, there is a feature which you can define your own language for syntax highlighting i.e. User Defined Language (UDL). UDL can be exported and imported with XML file. There are a bunch of UDL files available here (include 2 files for ABAP) so you don't need to define everything by yourself.

However, there are two versions of UDL and they are not compatible with each other. So before import a new UDL file, you should check the version first. Here is how to check:

Wednesday, January 4, 2017

Tuesday, January 3, 2017

How-To Backup and Restore Your Jenkins Data Volume in Docker

Refer to the instructions on this page, you can normally use command docker commit to create your own image from your container and even publish it to Docker Hub so everyone else can reuse your image.


However, Jenkins images declares the jenkins home directory (/var/jenkins_home) as a volume (See reference) so you cannot use the command docker commit to create the image as your changes made to Jenkins won't go with the image. You have to make a backup of your data volume instead (refer instructions on this page).

Here are the instructions to backup your Jenkins data from your Jenkins container (recently created from this blog), and how-to restore it:

Monday, January 2, 2017

Learn Git within 7 Minutes and Play Around with It

Yesterday, I watched a VDO on somkiat.cc about Git for beginner and I found it is really interesting especially for those who new to Git (like me! 😅). The video is from CodingDojo.



Here is the infographic published on their page.


So let's play around with it! But first thing to do is to install Git client from here. Once installed then you are ready to play.

Sunday, January 1, 2017

Architecting for Continuous Delivery - Jez Humble - Summary

I got a link to this video from Nont just before the Christmas weekend and watched it a few days ago.



Jez is the author of Continuous Delivery and Lean Enterprise. In this video, he talked about Architecting for Continuous Delivery in DevOps Enterprise Summit on 20 Oct 2015.

He brought the DevOps topic to another level so DevOps is not just how to make continuous integration and continuous delivery but it also involves changes in organizational culture and system architecture to support such process.

Here are what I captured from the video:


Thursday, December 29, 2016

The Art of Unit Testing and TDD 101 in C#.NET - Roy Osherove - Key Notes

Roy Osherove, the author of The Art Of Unit Testing, Notes to a software team leader and Beautiful Builds, has online training courses available at http://courses.osherove.com/. I had a chance to watch the first video, Unit Testing and TDD 101, which is available as a free preview of his course The Art of Unit Testing & TDD Master Class in .NET.


Roy spent the first ~30 minutes explaining about unit testing and spent the next hour to demo on how to write unit test in C#.NET as well as the good and bad practices. He hasn'r started demo TDD until the last 30 minutes which I think it is worthwhile to know how to write good unit tests before jump into TDD.

Below are some key notes I did captured from the video (hightlighted in Blue) which I think it may be good to share to eveyone:

Introduction to NoSQL - Martin Fowler - Summary Mindmap

I got a link to this video from Nont last week and just had a chance to watch it yesterday:



Here is the mindmap I created to summarize what I understand from this video:


Related Blog

Sunday, December 25, 2016

Test Drive Jenkins using Docker - Part III

...Continued from Part II

Instructions Summary

  1. Part I: Install Docker
  2. Part I: Clone repository from GitHub
  3. Part I: Download and start up Jenkins 
  4. Part II: Add new project "PULLCODE" to connect to GitHub repository
  5. Part II: Add new project "BUILD" to build project with Maven
  6. Part II: Run MariaDB and test BUILD
  7. Part III: Install and create Build Pipeline
  8. Part III: Install JaCoCo to check for test coverage
  9. Part III: Install Build Monitor View and schedule run interval

Test Drive Jenkins using Docker - Part II

Instructions Summary

  1. Part I: Install Docker
  2. Part I: Clone repository from GitHub
  3. Part I: Download and start up Jenkins 
  4. Part II: Add new project "PULLCODE" to connect to GitHub repository
  5. Part II: Add new project "BUILD" to build project with Maven
  6. Part II: Run MariaDB and test BUILD
  7. Part III: Install and create Build Pipeline
  8. Part III: Install JaCoCo to check for test coverage
  9. Part III: Install Build Monitor View and schedule run interval

Saturday, December 24, 2016

Test Drive Jenkins using Docker - Part I

This blog post is available on Medium. Click here to see this story on Medium.

Jenkins is now popular these days as a continuous integration and continuous delivery tool to automate software development process to achieve DevOps objectives. I have a chance to see a demo during the Test-Driven Development training last week at IMC Institue by K.Somkiat Puisungnoen (www.somkiat.cc)



Here I have listed instructions I tried on Windows 10 that you can follow if you are new to Jenkins and want to see what it can do. Thank you very much to Nont who spent an hour to help me setting Jenkins up.

PS: I'm not the expert but just tried this out for the first time so your comments and suggestions will be very appreciated.

Instructions Summary

  1. Part I: Install Docker
  2. Part I: Clone repository from GitHub
  3. Part I: Download and start up Jenkins 
  4. Part II: Add new project "PULLCODE" to connect to GitHub repository
  5. Part II: Add new project "BUILD" to build project with Maven
  6. Part II: Run MariaDB and test BUILD
  7. Part III: Install and create Build Pipeline
  8. Part III: Install JaCoCo to check for test coverage
  9. Part III: Install Build Monitor View and schedule run interval

Test-Driven Development (TDD) Resource Site (tdd.pacroy.com)

I have created a website to include all resources I gathered so far about TDD (Test-Driven Development) which maybe useful for developers who want to know more about it.


As there is a lot of information, I've decided to create the site in mindmap style so it is friendly for your brain (hopefully 😉). The mindmaps are created and exported using iThought app. You can see the exported example mainmaps here.

Link to my TDD site: http://tdd.pacroy.com