With the previous interview with our CAD Pockets team, you must’ve had a better idea about the product and its stories. This time, we’re taking you behind the scenes of ZWCAD to witness how it was born, has been growing and will develop. Charles Zhao, its developer and Kyle He, its product manager will be the storytellers today.
To learn the full story, don’t miss the article below!
C: Hello, I’m Charles Zhao, the R&D leader of ZWCAD. I’m in charge of the kernel development and the regular maintenance of ZWCAD. I’ve been serving ZWSOFT for 12 years.
Actually, I’m like a bridge between our users and the R&D team. After listening to the users and reordering the information, I’ll allocate R&D resources reasonably to realize the desired functions.
C: Like Kyle said, the Product Management team connects the market and the R&D team. His team decides whether the voice of our users can be heard, and mine determines whether those user needs can be realized.
Once my team is clear on the demands, we get down to continuously improving ZWCAD, making it more competitive and creating values for our users. As long as the functions are widely requested, the R&D team will spare no efforts to make them available.
However, the R&D process is one of production. We can’t have anticipated all the potential technical issues. So, if there are any R&D hiccups, we’ll sit down, talk about them, and make timely adjustments to the market plan. The very frequent and yearslong interaction between our teams has led to a tacit understanding of offering users a better product.
C: As Kyle just said, we have the same goal of making a product that meets demands from the market. Hence, there is no fundamental contradiction between us. True, sometimes they pass the heat from the market on to us. But it is, in fact, a contradiction between strong market demands and insufficient R&D resources.
In my opinion, we are interdependent. My team relies on Kyle’s to understand the market demands and they need us to satisfy the users. And only when we cooperate closely, can products like ZWCAD be born.
For example, at the beginning of every project, before our programmers write the first line of source code, there have been hundreds, if not thousands of test cases. They are done to ensure that every line of source code will be correct in the development process. After we finish the development, there is a QA team waiting. The Quality Assurance team will examine the project quality to see whether it meets the customer needs from multiple angles. For instance, they will conduct regression testing, measure the code coverage of the test cases, do integration testing, and analyze the source codes.
K: You see, Charles’s R&D team is excellent! And I’m grateful for having an energetic Product Management team. My team members watch out for users’ issues and listen to their requests. What’s rarer is that they’re super creative in not only designing functions, but also making them handier for our users.
Here’s an example. We’re working on a program named NLAT (Network Licenses Analysis Tool). In a lot of big businesses, the IT managers need to allocate software licenses. For instance, some Professional licenses for certain departments, some Standard versions for the others. In the past, they had to edit text files to do that, which is a complex, error-prone and tricky process. In other words, there’s a demand for efficient license allocation. So, we decided to make a visual tool that has an intuitive interface so as to meet this need.
Creating a new kernel for ZWCAD is anything but easy. My R&D team has struggled a lot along the way. Sometimes, we were stuck with one issue and seemed to be getting nowhere. We got questioned as well. Numerous issues flooded to us in a short span of time and we worked on them day and night. I remember that during that time, many of my team members would work past 11 P.M. and even, into the wee hours of the next day.
But luckily, my team withstood the challenge and eventually redesigned and realized the new kernel for ZWCAD, which is comparatively better structured, more flexible in design and can better support add-ons. It becomes less problematic every time a bug is fixed. It’s like a diamond in the rough. Keep cutting it and we shall get a dazzling diamond.
K: The upgrade of the kernel is indeed a milestone in the development of ZWCAD. Since Charles has elaborated a big achievement, let me tell you a little story.
Recently, I had the honor of visiting one of our Japanese customers. As soon as I stepped into their office, they handed me a piece of A4 paper full of notes. And I wondered what’s that about. They told me they listed all the issues solved during their 7 years of using ZWCAD on that piece of paper. They continued to say that they like ZWCAD for being lightweight and powerful. And more importantly, they like that we respond to them quickly. Just like in other solutions, issues occur sometimes. But the quick responses from our technical support team always surprise them. Moreover, they like how we are willing to listen to and pay visits to them. And I believe that’s the charm of ZWCAD.
First of all, its compatibility. If you ask users, “What’s the most important when switching to a new CAD solution?” They are likely to say compatibility because it’s vital that the new solution can inherit the legacies from the old one completely. Many users’ designs have lasted for not 1 or 2 years, but 5, 10 or even 20 years. They have a huge amount of stored drawings. And it’s hard to ask the original designers to redesign those drawings.
Now, let’s talk about the second point, functionality. When users are evaluating a CAD solution, they take into consideration whether its functions can actually meet their practical needs. You can learn the functions of ZWCAD from various sources, for example, our help documents and official website. Nevertheless, the most practical way is to try it out and see whether it satisfies your needs. According to a lot of user feedback, the functionality of ZWCAD can meet their demands.
Third, it’s about its extensibility and connectivity. If the users need add-ons, extensibility is essential. ZWCAD is an extensible platform where users can customize functions to serve their practical needs.
And the last one, the service and support that come with the solution. It’s inevitable that users get confused when using CAD software. “How does this function work?” “Is this function supposed to do that?” We get those questions a lot. Naturally, they need support from the provider or the distributor. CAD solutions are tools that should serve users for years. Hence, good service and support guarantee good user experience.
So, if it still takes forever to open a CAD drawing or even the solution itself, it’d make a sharp contrast with the fast pace of modern life. Users might wonder, “Why can’t I open drawings as fast as others do? I could send 5 or 6 emails while waiting.” Hence, I believe we should add a special feature to the powerful ZWCAD. “Fast” is a vital feature. I also believe that the faster and faster ZWCAD will keep improving user experience.
C: I totally agree with Kyle’s insights into users’ thoughts. In fact, the operational efficiency is a competitive edge for CAD solutions. Therefore, my team has been investigating all the technologies that can accelerate ZWCAD.
There are mainly two steps to accelerate the drawing opening process. First, we accelerate the process of DWG data reading. During this process, the binary data of files are deserialized into the proceedings of ZWCAD and organized into a database. Second, we accelerate the data visualization. During this process, the data in the database will be visualized. We call it the generation of visualized data. For ZWCAD 2020, we’ve taken the first step and sped up file reading. You should experience that acceleration when working with it.
In the next version, we will take the second step. With multi-core CPUs and GPUs as well as parallel processing, the calculating speed during the regeneration will be greatly improved. We’ve made some tests. And judging from their results, that process can be at least twice as fast.
C: Apart from the features Kyle mentioned, I think there are more to ZWCAD. For example, its kernel is highly extensible and easy to maintain, so that we can quickly respond to assorted user requests and support new functions. Another important point is that we remain down-to-earth when developing ZWCAD as a CAD platform. And although a platform doesn’t have industry-specific characteristics itself, we focus on supporting add-ons of all industries. That’s why ZWCAD supports many programming technologies, such as C++, VBA, Script, LISP and .NET.
C: I totally agree with Kyle. ZWCAD is facing fierce competition in the global market. In order to retain a competitive edge, we must continue supporting new functions quickly. But, we’d rather slow down the R&D process to ensure the product quality. To do that, we’ve established 4 essential links within our team. They are solution defense, test-driven development, source code review and quality inspection and acceptance. Apart from these 4 links, we set up a human & machine hybrid testing system. It can help us find out about the problems of projects and solve them as early as possible.
K: Thank you, Charles, for complementing. In addition to the essential product quality, we’ll keep strengthening the capabilities of ZWCAD the platform and our API ability, because there may be a set of custom standards in every industry, country or company.
C: Right. A CAD platform without industry-specific applications is worthless. We know well that the value of ZWCAD comes from the great support for specialized applications. That’s why my whole team attaches significance to the robustness and compatibility of APIs. For example, we set up a team devoted to communicating with our add-on developers and providing technical support to them. Up to now, over 200 third-party applications have been successfully ported to ZWCAD.
Moreover, we’re working on some new SDKs (Software Development Kits). For instance, we’re developing an SDK for graphic systems and devices. Such an SDK can help our users customize drivers for their graphics devices. Compared with the Microsoft® drivers, the customized ones can better utilize the unique properties of the devices and produce better visuals.
K: Exactly. Apart from improving our APIs, we are paying constant attention to cloud computing. As we all know, ZWCAD is becoming faster and faster. ZWCAD 2019, 2020 and the coming 2021 witness the improving operational efficiency. However, certain drawings or functions, for example, rendering are limited by hardware. Hence, introducing cloud computing to ZWCAD is necessary and beneficial to user experience.
C: Right. The cloud computing technology is a hot topic now. Many tend to incorporate it into their software. It is indeed advantageous. For example, cloud calculations and storage are very low-cost. The client-side calculations and storage of products like ZWCAD, will gradually migrate to the cloud. With the remote accessing, storing and high-performance calculating abilities of the cloud, users can access our CAD services anytime and anywhere using any device.
K: Yes. Last but not least, ZWSOFT focuses on all-in-one CAx, and ZWCAD can also play a role in it.
C: Kyle’s right, the all-in-one CAx concept is one that aggregates all kinds of engineering design abilities. From the technical point of view, the key to integrating ZWCAD into all-in-one CAx is data integration.
A lot of work has been and will be done to ZWCAD because we need DWG-related technologies to make the CAx solutions compatible with DWG data. This requires that we decouple the database of ZWCAD. Then, this individual database serves not only the CAx solutions, but also, ZWCAD users. It means that our users can batch process with the DWG database alone.
Why don’t we let our imagination run wild? Will the CAD industry become What You Think Is What You Get? Is it possible that a thought will instantly become a drawing or a 3D model in the future? With a few adjustments, users can generate the construction drawings?
C: My thoughts are more practical compared with Kyle’s (laughs). I’m interested in the integration of 2D and 3D design abilities. For example, a lot of architects user 2D CAD solutions to design. Those 2D designs can turn into real-time 3D models. They can also design and edit 3D models which will turn into real-time 2D designs. Besides, I’m attracted to the cloud platform, which will allow our users to access our CAD services anytime and anywhere via any device.
I hope that we can witness that new technologies boost the efficiency of practitioners in all industries worldwide.
As the starting point of many design workflows and the representation of ZWSOFT’s 2D technologies, ZWCAD will play an important role in the CAx blueprint. Hopefully, this interview with the leaders of the ZWCAD teams has enlightened you about the development of 2D CAD technologies and how it can benefit your design work.
Keep your eyes peeled for the coming interview about ZW3D!
ZWSOFT Content Specialist