In the very early days of computing, professional programming was nearly synonymous with academic research because computers tended to be devices that existed only or largely in academic settings. As computers became commercially available, they began to be found in private-sector, business environments. The 1950s and 1960s brought computing in the form of automation and data processing to the private sector, and along with this came a growing community of professionals whose focus on computing was pragmatic and production-oriented. Computing was (and still is) evolving, and the academic community continued to explore new software and hardware concepts and constructs. New languages were invented (and are still being invented) to try new ideas in the formulation of programs. The introduction of time sharing created new territory to explore. In today's world cloud computing is the new time sharing, more or less.
The world is, of course, about 70-plus years into the evolution of computing. ACM is 67 years old, founded in 1947 (I was 3 years old at the time!) by the inventors of computing. Its focus is clear from the name they gave it: Association for Computing Machinery. Today's computing landscape reveals a rich and varied tapestry of software and hardware platforms on and through which researchers and professionals pursue their interests. This is not to suggest that researchers aren't professionals. Far from it. The point is only that the focus of these groups differs in many respects but may overlap when new processing algorithms are sought and new hardware concepts are needed. Quantum computing, still in its infancy (and maybe in its fantasy), is a case in point, where new conceptual algorithms may be needed to take advantage of the unusual computational properties associated with quantum theoretic principles.
It is also worth noting that academic disciplines such as physics, biology, economics, and chemistry are all making increased use of computing and new algorithms to pursue research and applications. The 2013 recipients of the Nobel Prize in chemistry, for example, were cited for algorithmic work: Martin Karplus, Michael Levitt, and Arieh Warshel were jointly awarded the prize "for the development of multiscale models for complex chemical systems" (nobelprize.org/nobel_prizes /chemistry/laureates/2013/).
The question that occupies my mind, especially as membership in ACM has not grown in a way commensurate with the evident growth of programmers, is whether and how ACM can adapt its activities and offerings to increase the participation of these professionals. One does not have to be a member of ACM to participate in its many conferences and workshops. One can join a SIG (Special Internet Group) without being a member of ACM. I would not propose to change any of that, but I wonder whether ACM might take steps to attract the interest of—and, more important, the support of—professionals who are not researchers in computer science. It is even likely that not all computer science researchers are members of ACM, in part, for example, because the ACM Digital Library may be available to them through their institutions.
I am very conscious of the fact that this essay, appearing in CACM, may not reach the very parties whose opinions and interests I would most like to gauge, though CACM does have a section for pragmatic articles of interest to working programmers, and its associated publication, ACM Queue, is specifically devoted to this cohort of colleagues.
What I would like to ask readers of this essay is how they satisfy their need to keep informed about computing practices and research results that may influence their own work. Looking back at my own membership in ACM (since 1967), I was advised by my mentors in graduate school that ACM membership was a mark of a professional, and I continue to believe that; but it seems evident that this view is not as widespread today. Why not? Is there something that ACM should be doing to change that? I would also observe that ACM has an enormous range of activities in education, publication, practices, contests, conferences, and workshops that are deserving of support from all of us who make our living in the computing space. Perhaps it would be helpful to draw more attention to all of these beneficial activities, which are made possible only by members' and volunteers' commitment to them.
I can be reached at email@example.com, and I look forward to your perspectives.
LOVE IT, HATE IT? LET US KNOW
Vinton G. Cerf is Google's vice president and chief Internet evangelist. As co-designer of the TCP/IP protocols and architecture, Cerf is the one of the "fathers of the Internet." He holds a B.S. degree in mathematics from Stanford University and M.S. and Ph.D. degrees in computer science from UCLA. Cerf is the Past President of ACM and served as ACM president from 2012-2014.
© 2014 ACM 1542-7730/14/0700 $10.00
Originally published in Queue vol. 12, no. 7—
see this item in the ACM Digital Library
Tyler McMullen - It Probably Works
Probabilistic algorithms are all around us--not only are they acceptable, but some programmers actually seek out chances to use them.
Kate Matsudaira - The Science of Managing Data Science
Lessons learned managing a data science research team
Phelim Dowling, Kevin McGrath - Using Free and Open Source Tools to Manage Software Quality
An agile process implementation
Ivar Jacobson, Ed Seidewitz - A New Software Engineering
What happened to the promise of rigorous, disciplined, professional practices for software development?
Displaying 10 most recent comments. Read the full list here+1 on Jim H.'s post. Relevance: what is the ACM for these days when we have so many other better resources available? Seems like the ACM will have to reinvent itself, or be content with doing conferences and paywalls.
I say this as somebody who has been an ACM member for more than a decade (including DL access) and who actually finds a lot of the more substantive articles in CACM to be really interesting and very well-written. I cut out the best ones that I'll want to read again and must have collected at least fifty over the years. I keep my membership because I enjoy lots of the content, I use the DL regularly, and I hope for change as a new generation of folks work their way up the ranks both as members and as employees of ACM. I won't wait forever though, and probably not more than a couple years more without some significant changes.
I've suggested the following to several CACM editors. As a practitioner I've always been interested in a wide range of research and applications but CACM has never been able to fulfill this need. The problem has been there are too few and too long articles. My model for what I would like to see from ACM is a publication like Science News where there are many short articles which review and summarize developments in scientific research, conferences and other topics.
It has become clear to me that CACM will *never* fill this need. I haven't even looked at an issue in at least two years, but read almost every word in my copies of Science News.
Lapsed ACM member for over a decade.
I've been involved with programming for 30 years and have shipped numerous professional games on various consoles and the PC. Sadly, the ACM is largely irrelevant due to the content and articles being behind a paywall.
I would rather go to the homepage of the author of whitepapers and download their .pdf, browse stackexchange for questions (and answers), check reddit, check the GDC vault, or find the few SIGGRAPH papers that I need instead of paying to access the ACM for a _few_ articles that I need.
When so much content is available freely online, the "perceived value" of ACM is zero to me.
What can the ACM offer me that I can't find elsewhere, freely??
This problem is just systemic to the ACM. I used to read Dr. Dobbs and the C User's Journal religiously 15 years ago but now-a-days I rarely find them interesting.
What could ACM do to attract members?
By providing _complete_ source + data for whitepapers. So often I will read a whitepaper only to find there is no way to _reproduce_ the author's conclusions. This is an extremely bad practice and sloppy Science. Help bring back "accountability" and "reproducibility" to whitepapers and the ACM will again "have value."
Until then, I sadly fear it will become more irrelevant in the modern web.
I don´t think ACM should loose its theoretical approach and become a new IEEE computer(I think both associations are complementary important for the programmer). Maybe showing applications of recent theoretical results could make it more appealing in practice.
Theory is really important in practice, and I love reading columns about theoretical subjects(I am a practicing programmer) that will not be mainstream for a while, they give me the horizon of what is about to come.
Showing theory applied to practice is a good way to remain true to ACM´s founding values, while at the same time adapting to this new world of ubiquitous computing, where people learn to program before they realize the importance of theory. In fact, there lies a great opportunity for ACM: Teaching "theory appreciation for hackers! "
The book "Built to Last" by Jim Collimns is a good read for current ACM managers facing its current challenges. Basically, institutions that last remain true to their original values, while adapting mostly everything else to the uses of the time. Those are times of people programming professionally without a clear idea of what formal languages, states or algorithmic complexity are. Theory is as important to them as it is to everyone else, maybe ACM could have a few articles with this audience in mind.
Finally, this column reminds of Djkistra´s article: "On the cruelty of really teaching computing science"
"Teaching to unsuspecting youngsters the effective use of formal methods is one of the joys of life because it is so extremely rewarding. Within a few months, they find their way in a new world with a justified degree of confidence that is radically novel for them; within a few months, their concept of intellectual culture has acquired a radically novel dimension. To my taste and style, that is what education is about. Universities should not be afraid of teaching radical novelties; on the contrary, it is their calling to welcome the opportunity to do so. Their willingness to do so is our main safeguard against dictatorships, be they of the proletariat, of the scientific establishment, or of the corporate elite."
Please ACM, remain true to your values, but at the same time adapt to the uses of our age.
For research, the ACM needs to require working source code published in public repositories like Github. It's incredible that you can publish a paper without showing that the concept can really be applied. Having working source code to go along with papers would be invaluable for professionals, and would increase the quality of the papers themselves.
I agree with others that a paywall runs counter to the open nature of science. To fund itself the ACM could run conferences for practitioners. This would also feed practice-oriented content into the system.
Displaying 10 most recent comments. Read the full list here