I recently needed to write a small piece of download code. So you pass in the ID of the document to a REST API and it should give you back a blob of the actual file. The problem however is how to actually save this blob of binary data into a local file. So a quick Googling threw up some interesting links which I finally used to finalize my solution.
Author Archives: cyberaka
Fractal Folders
I have asked myself this question a number of times. What is the best possible way to structure my UI code? Should I cluster the files using functionality or by the type of file? etc. etc.
I found a partial answer in Fractal Folders while learning ReactJS. This basically proposes that for an UI page there are many functionalities which it is comprised of and the artefacts related to these sub-functionality should be clustered as sub-folders.
Storyboard your ideas
I wanted to convey / pitch an idea to somebody. To do this I used a storyboarding tool called Story Board That. This tool allowed me to create a pitch that clearly conveyed an idea. Overall a good tool!
BPMN Doubt: Difference between Pools and Lanes
What is the difference between Pool and Lane in BPMN?
Its a common newbie question while doing BPMN modeling. The rule of thumb is “Swimming pools have multiple lanes”. So you can model a pool and then lanes inside it. This article provides in-depth knowledge on this concept.
Uninstalling and reinstalling brew
I use brew utility for all my terminal based installation needs. However recently I had to deal with a corrupted brew install. To fix this I followed this link. The uninstallation and reinstallation worked fine and I now have a working brew instance.
The commands as mentioned in the above link are:
$ cd `brew –prefix`
$ rm -rf Cellar
$ brew prune
$ rm -rf Library .git .gitignore bin/brew README.md share/man/man1/brew
$ rm -rf ~/Library/Caches/Homebrew
$ ruby -e “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)”
Export JSON from RoboMongo
I use RoboMongo extensively for all my Mongo development work / debugging. I however sorely needed a way to export JSON from it. A Stack Over Flow link came up in a Google search and I was able to export JSON for my use. Basically you need to execute this command which uses “printjsononeline” function provided by Mongo to give you one line JSON for each row in the collection:
db.getCollection('collection_name').find({}).forEach(function(x){printjsononeline(x)});
Good tutorial for JavaFX
I needed to design a UI using JavaFX. I use SceneBuilder for building my UI. I found this invaluable link for using AnchorPanes concept to make it work inside TabPanels. It really cleared my concepts in a minute and I had a working tab based UI shortly.
Installing pip on MacOS
I recently started exploring python and immediately ran into the following issue:
$ pip install requests
-bash: pip: command not found
A quick google search yielded this result. So basically on MacOS you have Python preinstalled along with easy_install command. So the following command installs pip:
$ sudo easy_install pip
Searching for pip
Reading https://pypi.python.org/simple/pip/
Best match: pip 9.0.1
....
....
Processing dependencies for pip
Finished processing dependencies for pip
A quick and handy solution indeed!
Adding docker support in Spring Boot application
Adding docker containerization support in a working Spring Boot application is surprisingly easy.
Step 1: Add the docker maven plugin to your pom file.
<build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> <plugin> <groupId>com.spotify</groupId> <artifactId>dockerfile-maven-plugin</artifactId> <version>1.3.4</version> <configuration> <repository>${project.artifactId}</repository> </configuration> </plugin> </plugins> </build>
Step 2: Build the application as well as the docker image
mvn clean package install dockerfile:build
Step 3: I have a local docker registry setup in my Lan so I prefer to push this image to my network registry manually (this can be automated as well however).
docker tag my-app:latest my_network_registry_host:5000/my-app
Step 4: Now we can bootup this docker image anywhere in the network.
docker run \ --detach \ --link <any database link> \ -e <Environment variable 1> \ -e <Environment variable 2> \ -p 8080:8080 \ --name my-app \ my_network_registry_host:5000/simply-hr
docker logs --follow simply-hr
Install Python Offline
Found a good article which enabled me to install python 2.7.3 inside a folder.
http://www.benhepworth.com/blog/2016/05/18/install-python-to-separate-directory-on-linux-in-5-easy-steps/