Computerworld

JavaScript training for every employee? One company says yes

Software firm FreeCause mandates that everyone learn JavaScript -- and they mean everyone.

Coding is all the rage these days, as everyone from New York City Mayor Michael Bloomberg to urban teenaged girls tries a hand at computer programming.

But few organizations have taken the trend quite as seriously as FreeCause, a Boston-based developer of loyalty management software for retailers and affinity groups. Every FreeCause employee, from CEO Mike Jaconi on down, is learning JavaScript. Inspired by the dictate within its Japanese parent company Rakuten to have all its employees become fluent in English, Jaconi decided to have everyone, from himself down to the interns, learn to code.

Given that edict, it would only be natural to assume Jaconi is a geek, eager to imprint his culture on the 7-year-old company. In fact, he has a degree in political science from the University of Southern California and spent some time working on John McCain's presidential campaign. Nevertheless, he is passionate about the benefits of group coding.

FreeCause CEO Mike Jaconi: Having everyone learn JavaScript helps to "raise the level of intelligent dialogue and improve collaboration between the various teams within the company."

"I felt it would only raise the level of intelligent dialogue and improve collaboration between the various teams within the company," Jaconi says. And so he announced in January that any of the 60 employees who didn't already know JavaScript, the language of its software development team, would take programming lessons, whether their job required it or not.

"Our employees' livelihood is based on a complex technology," says Jaconi. "We wanted them to know more about the technology our customers are touching. Our 'codinization' program was important for both client dialogue and cross-departmental communication."

Jaconi's announcement was met with both enthusiasm and skepticism, but the results -- even among the skeptics -- have been encouraging and enlightening, he says, and in at least one case, the gamble has paid off in ways that improve the bottom line.

Could such an approach produce similar results at other companies? Josh Bersin, CEO of Bersin & Associates, an Oakland, Calif.-based analyst firm focusing on training and talent management, has never heard of a company training all its employees to program. He does cite tech firms like IBM and EDS (now part of Hewlett-Packard) that have trained large swaths of customer-facing employees on specific technologies in order to ensure a common level of institutionalized knowledge.

"If you're in product support or a customer advocate, and you know how the product works because you've learned how it's coded, you can answer questions in a more valuable way," says Bersin. "And when clients ask for configuration and customization, everyone understands the implications. I've just never seen it done to this extent."

At first, pushback is part of the package

FreeCause uses online training from Codecademy to teach the basic levels of coding, asking each employee to spend two hours a week with it. Those online lessons are augmented with two weekly one-hour meetings with a lead programmer, who acts as a mentor, and a team of three or four others, during which lessons are reviewed. A monthly "boot camp" is designed to impart more general programming lessons.

Each team is also responsible for development of a new coding project that it will present to the company later this year -- projects may involve creation of a new feature or improved functionality for a Web page within the FreeCause application. The company has not yet determined future activity, such as refresher courses or work on other languages.

Jaconi admits to being initially nervous about pushback from the employees. "I didn't anticipate that we'd have as much buy-in as we did up front," he admits. That didn't happen immediately. Several employees, both technical and non-technical, report being skeptical at the outset.

We [engineers] all went to school for years to learn [coding], so the idea of casually teaching it to employees was daunting. Kyle Gifford, implementation engineer

One of the former is Kyle Gifford, an implementation engineer for FreeCause who was already well-versed in a variety of Web-development technologies, including JavaScript. "It's a big initiative with a lot of pieces," he says. "And learning to code is different form learning a foreign language. It's not just words and syntax, it's semantics. It's being able to analyze problems and come up with solutions. We [engineers] all went to school for years to learn this, so the idea of casually teaching it to employees was daunting."

One of the latter is Len Fainer, former director of product management (who has since left FreeCause for a job with a shorter commute). Fainer had a background in marketing and business administration, but never studied computer science. He and his team found it difficult to keep up with the lessons given their workload, and he's not sure how much of the knowledge he'll retain over time.

That said, he admits, "I understand the value to the company from a holistic point of view." He notes that product managers sometimes get software-related requests from customers that may not be as simple as they sound, and they now better understand the effort involved in building and maintaining them.

CTO Antoine Hage expands upon that point: Previously, he says, a business person might promise a programming change to a customer, thinking it would be easy to update a feature. "Now they understand the challenges, so when they're selling a solution, they know how much time a new feature might take. [And] they can answer questions immediately without having to bring in a technical salesperson."

Interestingly, the programming requirement hasn't limited hiring efforts. In its initial interviews, FreeCause highlights the ongoing cross-company programming requirement, and none of the six non-technical people it's hired in the last few months has balked at the idea, says Hage.

Offloading engineering tasks

One goal in implementing the program was to see how many tasks the company could offload from its engineering staff. As Jaconi explains, "In any company, engineers complain that not only does the business side not understand what they do, but they're overloaded with mundane tasks that never become a priority." That frustrates both sides.

According to Hage, the company used to allocate about 30% of the engineering staff's time to fulfilling requests from the business side for new features in the company's software. Offloading even 20% of that time to let engineers focus on high-level tasks delivers a huge benefit, he says -- especially in a technology company, where engineering represents a high percentage of costs.

Data analyst Corinne Salchunas: "Working with my coding mentor ... we were able to improve clickthroughs at least sixfold."

Data analyst Corinne Salchunas is one employee who has taken up the challenge. Salchunas is responsible for analyzing the effectiveness of the company's loyalty management software. With a degree in economics, she had not done any programming in school and none at FreeCause beyond Excel macros and limited database queries.

"One of our features notifies people when they can earn points on a particular site, but I noticed that users weren't clicking on these notifications very frequently," says Salchunas. "I realized that we weren't notifying users clearly enough. Working with my coding mentor, I came up with some new versions of the notifications, including having the pop-ups appear sooner, and between the messaging and the timing, we were able to improve clickthroughs at least sixfold."

"That was a great demonstration of how powerful codinization could be," says Jaconi. "We never anticipated that that kind of validation would happen so quickly."

Is coding for everyone?

Would something like FreeCause's cross-company codinization program work for every company? Very likely not. But the idea behind the program should resonate for both CEOs and CIOs. "As we become more dependent on technology," says CEO Jaconi, "it's tough to argue against people learning what their future work might be based on."

Manufacturing jobs are turning into software engineering jobs, he says. "We're interacting with more technology than ever before, so having a fundamental understanding of what our future is built upon will make us better consumers and better professionals."

Ultimately, Jaconi says, "If you understand the technology your company is built on, you can only become better at what you do."

Bersin, the talent and training analyst, agrees on the importance of common vision and execution within an organization. "All well-run companies have a curriculum that they want employees to know. It's taught either through word-of-mouth, or reinforcement, or certification. It helps everyone speak the same language."

Frequent contributor Howard Baldwin also wrote Should the CIO know how to code? He lives and works in Silicon Valley.

Read more about it leadership in Computerworld's IT Leadership Topic Center.