Tools are an integral part of every company. Whether you are a startup in Silicon Valley doing some crazy stuff or you are an organization extracting oil in the Middle East, you need to use tools to make your work more efficient.
As the dictionary defines, tools are something that helps you do a particular task. So the software you use at Silicon Valley to communicate with others is a tool. And, the machine you use in the Middle East to refine crude oil is also a tool.
As for Programiz, we belong to the category of Silicon Valley. We are more of the software people. Being an online-based IT company, we are more dependent on the software. However, it does not mean we never use hardware. That would be inappropriate to say as software needs computers, which you all know is definitely hardware.
However, in this blog, I will be focusing only on the software tools that we use at Programiz. So let's get started.
Tools for Sustaining programiz.com on Internet
When it comes to sustaining our site on the internet, Programiz is dependent on three major tools for Domain Name, Web Hosting, and Content Management System.
1. Domain Name: NameCheap
The text programiz.com you see on the address bar of the browser is the domain name. Basically, a domain name helps to identify and access a website on the internet.
To use a domain name, the domain name has to be registered to the Domain Name System. For the domain name registration, you can find various websites on the internet. However, for our domain name, we have used NameCheap.
2. Web Hosting: DigitalOcean
When you type programiz.com on the browser, you will be able to see our site.
This is the service of web hosting. Web hosting allows a website to be accessible on the web. Various web hosting companies are present in the market that provide hosting services.
Basically, web hosting companies provide us storage to store our files and databases. Besides storage, they also provide RAM and CPU, so that all our users can access the files and databases of Programiz. For web hosting, we have used the service of DigitalOcean.
3. Content Management System: Drupal
A content management system is an application that helps to create and manage the digital contents (text, images, audio, video, and so on). As mentioned earlier, all these contents are stored in web hosting.
There are many CMS available right now. Here at Programiz, we have been using Drupal as our CMS.
Tools Used By Content Writing Team
Being a tutorial site, content is an integral part of Programiz. This is one of the reasons why we are so much focused on creating high-quality content.
In my previous blog post, I have shared an insight into the procedure of creating high-quality content. If you haven't read that already, make sure you check out the blog post at How we Create Great Content at Programiz.
Our content writing team is mainly dependent on 3 tools while creating content.
1. Tool For Content Research: Ahrefs Keyword and Content Explorer
Content research is an important part of content creation. Good research will help us understand our user behavior. It helps us know what information users are seeking and how they want the information to be presented.
For our content research, we have been using Keyword explorer and Content explorer tools from Ahrefs.
2. Tools For Writing Content: Nirmaan and Google Docs
Previously we have been using Nirmaan, our inhouse content writing tool. Nirmaan allows us to write content in plain text format. It will then generate the HTML and JSON format of our content.
Nirmaan has everything we need except for real-time collaboration. This is the main reason why we recently switched to Google Docs. Recently, we have been using Google Docs to write all of our content.
As mentioned earlier, the main reason for using Google Docs is its real-time collaboration and the built-in peer review feature. I don't want to dive deep into the rich functionality of Google Docs.
One such functionality has allowed us to create our inhouse Content Workflow System, another tool used by the content writing team.
3. Content Workflow System
Our inhouse Content WorkFlow System allows us to keep track of all our content.
A recent blog of ours has explained the engineering behind our CWS. Make sure you visit the blog Developing Content Workflow System at Programiz if you wish to make such a system in the near future.
Tools Used By Designer Team: Figma
Just creating high-quality content has never been enough for us. We want to provide a great experience along with our content. So with a goal to find a balance between aesthetics and usability, our designer team is continuously working to provide a whole different level of experience to our users.
Figma is the tool of choice among our designer team. The real-time collaboration feature and the minimality of the tool have helped our designer achieve our design goal at Programiz.
Tools Used By Developer Team
Now that we are expanding in the field of mobile applications as well, we have set up two different teams for Mobile Apps and Web Apps. Oftentimes both the team keeps collaborating with each other. However, the tools used by both teams are completely different from one another.
1. Tools Used by Mobile App Developer Team: Flutter and Codemagic
With the motto of Swipe, Learn, and Repeat, we launched our Learn Python app. Among the different options available, we chose to go with Flutter for developing our mobile app. The functionality of Flutter that allows us to create applications for different platforms is one of the reasons why we chose it in the first place.
Codemagic is another tool that our mobile app developers use regularly. Codemagic is a CI/CD (Continuous Integration/ Continuous Delivery) tool. It helps in efficient integration and deployment of the new build of the app to different environments.
2. Tools Used by Web Developer Team: VSCode and GitHub
When it comes to the web development team, there are no such specific tools that we use in Programiz. The tools keep changing depending on the requirements and trends.
3. Tools Used in Developing our Online Compiler: Docker and Kubernetes
Recently, we felt that just providing learning resources won't be enough to teach programming. So, we decided to provide an environment where our users can practice their coding skills. This is the main reason we decided to build our own online compiler.
Thanks to tools like Docker and Kubernetes, we are able to create a fast and beginner-friendly compiler. Basically, Docker is a container for an application that contains the full configuration of the environment that the code needs to be run in. And, Kubernetes is a container-orchestration system for deployment, scaling, and management of computer applications.
If you want to learn about the engineering behind our online compiler, visit the blog How We Built Our Online Compiler.
Tools Used By Marketing Team: Facebook Ad Manager
As mentioned earlier, we are focused on creating high-quality content which has resulted in lots of organic visitors to our site. That's why we never really thought about marketing.
However, we recently realized the power of marketing in business. Creating a great product is one thing and making people aware of it is another. This is why we started to market our products in recent times.
As for the tool itself, our marketing campaign is only based on social media. So, we have been using Facebook Ad Manager as our marketing tool. Facebook Ad Manager is an all-in-one tool to run and track ads on Facebook, Instagram, and Messenger.
Our blog on How We Use Psychology to Market Our Product gives you insight into our marketing campaign.
Tool Used For Communication: Microsoft Teams and Slack
Communication has been one of the Pillars of Programiz from the beginning. We treat communication as the backbone of our continual success. As I mentioned earlier, we are always in collaboration and teamwork. That is the main reason we consider communication is one of the important aspects of Programiz.
To ensure proper communication between all the members of Programiz, we have been using Microsoft Teams. Before Teams, we had been using Slack as our communication tool. However, we soon realized that Teams is the one our team feels comfortable with. Hence, we switched to Teams.
Tool Used For Project Management: Jira and Trello
Like Communication, Project Management is another important aspect of Programiz. Proper management is required for the efficient operation of our works.
We have been creating content, we have been developing mobile apps, we have been developing compilers, we have been marketing our products. We have been doing lots of work simultaneously. And, we knew from the beginning a project management tool is necessary. Otherwise, it will be chaotic to manually handle all the projects at once.
Initially, we had been using Trello as our project management tool. However, as our team started to grow, we soon realized that we needed something new. So we switched to Jira. Since then we have been using Jira to keep track of all our projects.
Besides all those mentioned above, one tool that I didn't talk about was G Suite. G Suite has been our business email tool. Thanks to it, we are able to use various other tools from Google like Google Drive, Google Docs, and so on for our business.
Tools have been an important part of Programiz from the beginning. We use tools to develop content, we use tools to develop apps, we use tools to communicate. This is the main reason why we wanted to find a perfect tool for all our tasks.
It's not that all those tools we have been using are best in the market. It's just that they serve our purpose at the moment. And, in the future, if we find something better, then we are ready to give it a try. At last, you got to keep evolving, right?