The debate over the benefits of "996" – the schedule adopted by a number of companies in China that requires employees to work from 9 a.m. to 9 p.m., six days a week – has recently spread like wildfire across Chinese social media.
Prominent tech figures Jack Ma of Alibaba and Richard Liu of JD.com have both come out in favor of 996. Even Chinese state media The People’s Daily has weighed in, but on the opposing side: “Employees who object to 996 should not be labeled as slackers. Employers have to consider their real needs.”
On average, programmers in China work 47.5 hours a week; and 5.7% of them work more than 70 hours per week. However, programming involves performing many repetitive tasks, some of which could be automated, freeing up developers’ time and enhancing efficiency.
That’s where aiXcoder, an AI-powered pair programming partner, comes in. Launched in March 2017, aiXcoder can be easily installed into commonly used integrated development environments – e.g., IntelliJ IDEA, Android Studio and PyCharm – as a plug-in.
Efficiency through automation
Computer programmers frequently refer to open source code repositories on hosting services such as GitHub to write their own code lines. But online searching can be time consuming.
According to Baidu Senior Vice President Wang Haifeng, the tech giant receives 6,700 specific programming requests from clients each day and runs 70,000 “daily builds,” the common practice of compiling software to identify coding issues introduced since the last build.
At Alibaba’s Yunxiao, a collaborative R&D platform for enterprises, nearly 20,000 developers perform more than 30,000 app updates daily and deploy over 150,000 software applications each week.
aiXcoder helps facilitate these daunting R&D tasks. When programmers use the plug-in while writing code, its AI-based system can predict and automatically finish code lines.
The developers of aiXcoder have built a database of source codes to train its AI system to learn coding patterns for higher prediction accuracy. The company estimates its code completion accuracy at 79%.
“Programmers’ well-established coding habits should be respected. Our algorithms have to learn from a mass of dynamic data to make aiXcoder work like a real and skilled pair programmer,” said founder and CEO Li Ge.
The training can also be personalized using programmers' finished codes. The plug-in automatically records coding patterns and API call sequences used by individual programmers in order to learn their writing preferences and patterns.
A relatively new product, the plug-in still needs some work. According to feedback from one programmer, “It delivers high code completion accuracy when writing functions, but it doesn’t work well when assigning values to variables.”
In order to address these sorts of issues, aiXcoder hosts a feedback forum on its website that its developers check regularly.
Business development
aiXcoder is one of the first startups of its kind in both China and the rest of the world. An early comer in the field of AI-powered programming, the startup has attracted attention from both individual programmers and tech heavyweights.
So far, most of aiXcoder’s business has been oriented toward enterprise clients. And the company’s users include some marquee internet companies. Huawei has fitted the aiXcoder plug-in into its software development tool to facilitate Android-based application development. Alibaba has integrated the aiXcoder plug-in into its cloud platform.
Not content to rest on its B2B laurels, aiXcoder is also eyeing B2C business opportunities.
For individual users, the startup has launched a professional version priced at RMB 128 a month. The individual version includes code autocorrection and open source code search.
The startup has also begun promoting its services on online programming communities. Developers can use their Github accounts to log into aiXcoder’s interface, and aiXcoder can call codes they’ve “starred” to train its AI engine.
If a code starred by an aiXcoder user was written by someone else on Github, the startup will offer the contributor a link to the aiXcoder interface. “In this way, we gain publicity among professional programmers,” said Li.