A Simple Summary of Tools Used in Our R&D Team

Background

On 27th May, this year, 2017, I welcomed another member of our research and development department. Since then, we became a 2 developers group (up to now, 20170817, we are still 2 although with someone came and went away). I, therefor became the one who need to think more about cooperation both in the scope of inner-department and between-department.

As one popular saying goes, "outstanding programmers spend more than 1/3 of their time to build tools they use". Although we are not as outstanding as those outstanding programmers, we are in the good times where there are a lot great tools.

Development

The following are the rough list that we use:

OPS

Documentation

For writing documents, we adopted lightweight MarkDown syntax with GitBook to organize and compile to shareable html files.

Inner-department Co-operation

Git Repositories on VPS for code version control

Docker to Freeze website environment

Embarrassing situation is that our code base project employs quite a lot symbolic links which only works on *nix platforms while I use a MacBook and my colleague uses a Windows PC.

For nearly about 3 month, my colleague uses a Virtual Machine inside VMware for development. And it seems that finding a way to bind host folder to Virtual Machine is not that easy so my colleague still use the conventional ftp to upload updated website files from host machine to virtual machine. However, this results sometimes problems, such as legacy version files in virtual machine which works wrong. Each time when I updated our development environment configuration, my colleague must do the same change again.

Then, I realized it is the time when we employ Docker. For the sake of our current need and also be better prepared to welcome new members of our team.

Inter-department Co-operation

Git Repositories with Push-to-Deploy Mechanism

These days, a lot of wonderful tool has already been here for web development co-operation. Our project manager adopts Axure for prototypes construction and our UI designer gradually adopts Sketch for ui design. Both of these two wonderful tools can export design files as html.

Personally, I love html files since they doesn't rely on specific platform or software. Any modern browser can render them and output nice looking documents.

So the only problem is how our project manager and ui designer could always provide the newest work to us developers! Yeah, for days before today, they usually export a whole bunch of files even though they just changed a little in one small area, and then they email the zipped file or send in an instant messaging group.

But we are R&D team, a better choice is take advantage of git push-to-deploy mechanism, which means we use git to track version changes and also when pushed to server side repository, files are also automatically deploy to web folder, just like Heroku. As developers, we can always check the newest state through one identical url link. And our manager and ui designer can always go back to their older work.

Notes

Re-composed on 20181121.


* cached version, generated at 2018-12-03 00:53:16 UTC.

Subscribe by RSS