- No suggested jump to results
Papers from the computer science community to read and discuss.
Name already in use.
Use Git or checkout with SVN using the web URL.
Work fast with our official CLI. Learn more .
- Open with GitHub Desktop
- Download ZIP
Sign In Required
Please sign in to use Codespaces.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
If nothing happens, download Xcode and try again.
Launching Visual Studio Code
Your codespace will open once ready.
There was a problem preparing your codespace, please try again.
- 857 commits
Papers We Love ( PWL ) is a community built around reading, discussing and learning more about academic computer science papers. This repository serves as a directory of some of the best papers the community can find, bringing together documents scattered across the web. You can also visit the Papers We Love site for more info.
Due to licenses we cannot always host the papers themselves (when we do, you will see a 📜 emoji next to its title in the directory README) but we can provide links to their locations.
If you enjoy the papers, perhaps stop by a local chapter meetup and join in on the vibrant discussions around them. You can also discuss PWL events, the content in this repository, and/or anything related to PWL on our Discord server.
Let us know if you are interested in starting one in your city!
All of our meetups follow our Code of Conduct .
Check out our YouTube channel for videos and video playlists.
We're looking for pull requests related to papers we should add, better organization of the papers we do have, and/or links to other paper-repos we should point to.
Other Good Places to Find Papers
- 2 Minute Papers
- Bell System Technical Journal, 1922-1983
- Best Paper Awards in Computer Science
- Google Scholar (choose a subcategory)
- Microsoft Research
- Functional Programming Books Review
- MIT's Artificial Intelligence Lab Publications
- MIT's Distributed System's Reading Group
- arXiv Paper Repository
- Services Engineering Reading List
- Readings in Distributed Systems
- Gradual Typing Bibliography
- Security Data Science Papers
- Research Papers from Robert Harper, Carnegie Mellon University
- Lobste.rs tagged as PDF
- The Morning Paper
Please check out our wiki-page for links to blogs, books, exchanges that are worth a good read.
How To Read a Paper
Reading a paper is not the same as reading a blogpost or a novel. Here are a few handy resources to help you get started.
- How to read an academic article
- Advice on reading academic papers
- How to read and understand a scientific paper
- Should I Read Papers?
- The Refreshingly Rewarding Realm of Research Papers
- How to read a paper
Applications/Ideas built around Papers We Love
- Love a Paper - @loveapaper
Open your favourite terminal and run:
This will scrape markdown files for links to PDFs and download papers to their respective directories.
See README.md for more options.
Please take a look at our CONTRIBUTING.md file.
The name "Papers We Love" and the logos for the organization are copyrighted, and under the ownership of Papers We Love Ltd, all rights reserved. When starting a chapter, please review our guidelines and ask us about using the logo.
Code of conduct
- Shell 100.0%
The top 10 research papers in computer science by mendeley readership..
Since we recently announced our $10001 Binary Battle to promote applications built on the Mendeley API ( now including PLoS as well), I decided to take a look at the data to see what people have to work with. My analysis focused on our second largest discipline, Computer Science. Biological Sciences (my discipline) is the largest, but I started with this one so that I could look at the data with fresh eyes, and also because it’s got some really cool papers to talk about. Here’s what I found: What I found was a fascinating list of topics, with many of the expected fundamental papers like Shannon’s Theory of Information and the Google paper, a strong showing from Mapreduce and machine learning, but also some interesting hints that augmented reality may be becoming more of an actual reality soon.
LDA is a means of classifying objects, such as documents, based on their underlying topics. I was surprised to see this paper as number one instead of Shannon’s information theory paper (#7) or the paper describing the concept that became Google (#3). It turns out that interest in this paper is very strong among those who list artificial intelligence as their subdiscipline. In fact, AI researchers contributed the majority of readership to 6 out of the top 10 papers. Presumably, those interested in popular topics such as machine learning list themselves under AI, which explains the strength of this subdiscipline, whereas papers like the Mapreduce one or the Google paper appeal to a broad range of subdisciplines, giving those papers a smaller numbers spread across more subdisciplines. Professor Blei is also a bit of a superstar, so that didn’t hurt. (the irony of a manually-categorized list with an LDA paper at the top has not escaped us)
2. MapReduce : Simplified Data Processing on Large Clusters (available full-text)
It’s no surprise to see this in the Top 10 either, given the huge appeal of this parallelization technique for breaking down huge computations into easily executable and recombinable chunks. The importance of the monolithic “Big Iron” supercomputer has been on the wane for decades. The interesting thing about this paper is that had some of the lowest readership scores of the top papers within a subdiscipline, but folks from across the entire spectrum of computer science are reading it. This is perhaps expected for such a general purpose technique, but given the above it’s strange that there are no AI readers of this paper at all.
3. The Anatomy of a large-scale hypertextual search engine (available full-text)
In this paper, Google founders Sergey Brin and Larry Page discuss how Google was created and how it initially worked. This is another paper that has high readership across a broad swath of disciplines, including AI, but wasn’t dominated by any one discipline. I would expect that the largest share of readers have it in their library mostly out of curiosity rather than direct relevance to their research. It’s a fascinating piece of history related to something that has now become part of our every day lives.
4. Distinctive Image Features from Scale-Invariant Keypoints
This paper was new to me, although I’m sure it’s not new to many of you. This paper describes how to identify objects in a video stream without regard to how near or far away they are or how they’re oriented with respect to the camera. AI again drove the popularity of this paper in large part and to understand why, think “ Augmented Reality “. AR is the futuristic idea most familiar to the average sci-fi enthusiast as Terminator-vision . Given the strong interest in the topic, AR could be closer than we think, but we’ll probably use it to layer Groupon deals over shops we pass by instead of building unstoppable fighting machines.
5. Reinforcement Learning: An Introduction (available full-text)
This is another machine learning paper and its presence in the top 10 is primarily due to AI, with a small contribution from folks listing neural networks as their discipline, most likely due to the paper being published in IEEE Transactions on Neural Networks. Reinforcement learning is essentially a technique that borrows from biology, where the behavior of an intelligent agent is is controlled by the amount of positive stimuli, or reinforcement, it receives in an environment where there are many different interacting positive and negative stimuli. This is how we’ll teach the robots behaviors in a human fashion, before they rise up and destroy us.
6. Toward the next generation of recommender systems: a survey of the state-of-the-art and possible extensions (available full-text)
Popular among AI and information retrieval researchers, this paper discusses recommendation algorithms and classifies them into collaborative, content-based, or hybrid. While I wouldn’t call this paper a groundbreaking event of the caliber of the Shannon paper above, I can certainly understand why it makes such a strong showing here. If you’re using Mendeley, you’re using both collaborative and content-based discovery methods!
7. A Mathematical Theory of Communication (available full-text)
Now we’re back to more fundamental papers. I would really have expected this to be at least number 3 or 4, but the strong showing by the AI discipline for the machine learning papers in spots 1, 4, and 5 pushed it down. This paper discusses the theory of sending communications down a noisy channel and demonstrates a few key engineering parameters, such as entropy, which is the range of states of a given communication. It’s one of the more fundamental papers of computer science, founding the field of information theory and enabling the development of the very tubes through which you received this web page you’re reading now. It’s also the first place the word “bit”, short for binary digit, is found in the published literature.
8. The Semantic Web (available full-text)
In The Semantic Web, Tim Berners-Lee, Sir Tim, the inventor of the World Wide Web, describes his vision for the web of the future. Now, 10 years later, it’s fascinating to look back though it and see on which points the web has delivered on its promise and how far away we still remain in so many others. This is different from the other papers above in that it’s a descriptive piece, not primary research as above, but still deserves it’s place in the list and readership will only grow as we get ever closer to his vision.
9. Convex Optimization (available full-text)
This is a very popular book on a widely used optimization technique in signal processing. Convex optimization tries to find the provably optimal solution to an optimization problem, as opposed to a nearby maximum or minimum. While this seems like a highly specialized niche area, it’s of importance to machine learning and AI researchers, so it was able to pull in a nice readership on Mendeley. Professor Boyd has a very popular set of video classes at Stanford on the subject, which probably gave this a little boost, as well. The point here is that print publications aren’t the only way of communicating your ideas. Videos of techniques at SciVee or JoVE or recorded lectures ( previously ) can really help spread awareness of your research.
10. Object recognition from local scale-invariant features (available in full-text)
This is another paper on the same topic as paper #4, and it’s by the same author. Looking across subdisciplines as we did here, it’s not surprising to see two related papers, of interest to the main driving discipline, appear twice. Adding the readers from this paper to the #4 paper would be enough to put it in the #2 spot, just below the LDA paper.
So what’s the moral of the story? Well, there are a few things to note. First of all, it shows that Mendeley readership data is good enough to reveal both papers of long-standing importance as well as interesting upcoming trends. Fun stuff can be done with this! How about a Mendeley leaderboard? You could grab the number of readers for each paper published by members of your group, and have some friendly competition to see who can get the most readers, month-over-month. Comparing yourself against others in terms of readers per paper could put a big smile on your face, or it could be a gentle nudge to get out to more conferences or maybe record a video of your technique for JoVE or Khan Academy or just Youtube.
Another thing to note is that these results don’t necessarily mean that AI researchers are the most influential researchers or the most numerous, just the best at being accounted for. To make sure you’re counted properly, be sure you list your subdiscipline on your profile, or if you can’t find your exact one, pick the closest one, like the machine learning folks did with the AI subdiscipline. We recognize that almost everyone does interdisciplinary work these days. We’re working on a more flexible discipline assignment system, but for now, just pick your favorite one.
These stats were derived from the entire readership history, so they do reflect a founder effect to some degree. Limiting the analysis to the past 3 months would probably reveal different trends and comparing month-to-month changes could reveal rising stars.
Technical details: To do this analysis I queried the Mendeley database, analyzed the data using R , and prepared the figures with Tableau Public . A similar analysis can be done dynamically using the Mendeley API . The API returns JSON, which can be imported into R using the fine RJSONIO package from Duncan Temple Lang and Carl Boettiger is implementing the Mendeley API in R . You could also interface with the Google Visualization API to make motion charts showing a dynamic representation of this multi-dimensional data. There’s all kinds of stuff you could do, so go have some fun with it. I know I did.
2 thoughts on “ the top 10 research papers in computer science by mendeley readership. ”.
You might consider revisiting the subdiscipline list, e.g. split computer vision, robotics and machine learning from AI, since the latest is a fuzzy and uncertain concept. Neural networks could be combined with machine learning, though.
Especially in fast-growing fields like computer science, discipline will always be a somewhat fuzzy concept. We are working on a way for people to assign themselves and papers to disciplines in a more flexible way.
Comments are closed.
- Already have a WordPress.com account? Log in now.
- Follow Following
- Copy shortlink
- Report this content
- View post in Reader
- Manage subscriptions
- Collapse this bar
Help | Advanced Search
Computer Science (since January 1993)
For a specific paper , enter the identifier into the top right search box.
- new (most recent mailing, with abstracts)
- recent (last 5 mailings)
- current month's cs listings
- specific year/month: 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008 2007 2006 2005 2004 2003 2002 2001 2000 1999 1998 1997 1996 1995 1994 1993 all months 01 (Jan) 02 (Feb) 03 (Mar) 04 (Apr) 05 (May) 06 (Jun) 07 (Jul) 08 (Aug) 09 (Sep) 10 (Oct) 11 (Nov) 12 (Dec)
- Catch-up: Changes since: 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 01 (Jan) 02 (Feb) 03 (Mar) 04 (Apr) 05 (May) 06 (Jun) 07 (Jul) 08 (Aug) 09 (Sep) 10 (Oct) 11 (Nov) 12 (Dec) 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008 2007 2006 2005 2004 2003 2002 2001 2000 1999 1998 1997 1996 1995 1994 1993 , view results without with abstracts
- Search within the cs archive
- Article statistics by year: 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008 2007 2006 2005 2004 2003 2002 2001 2000 1999 1998 1997 1996 1995 1994 1993
Categories within Computer Science
- cs.AI - Artificial Intelligence ( new , recent , current month ) Covers all areas of AI except Vision, Robotics, Machine Learning, Multiagent Systems, and Computation and Language (Natural Language Processing), which have separate subject areas. In particular, includes Expert Systems, Theorem Proving (although this may overlap with Logic in Computer Science), Knowledge Representation, Planning, and Uncertainty in AI. Roughly includes material in ACM Subject Classes I.2.0, I.2.1, I.2.3, I.2.4, I.2.8, and I.2.11.
- cs.CL - Computation and Language ( new , recent , current month ) Covers natural language processing. Roughly includes material in ACM Subject Class I.2.7. Note that work on artificial languages (programming languages, logics, formal systems) that does not explicitly address natural-language issues broadly construed (natural-language processing, computational linguistics, speech, text retrieval, etc.) is not appropriate for this area.
- cs.CC - Computational Complexity ( new , recent , current month ) Covers models of computation, complexity classes, structural complexity, complexity tradeoffs, upper and lower bounds. Roughly includes material in ACM Subject Classes F.1 (computation by abstract devices), F.2.3 (tradeoffs among complexity measures), and F.4.3 (formal languages), although some material in formal languages may be more appropriate for Logic in Computer Science. Some material in F.2.1 and F.2.2, may also be appropriate here, but is more likely to have Data Structures and Algorithms as the primary subject area.
- cs.CE - Computational Engineering, Finance, and Science ( new , recent , current month ) Covers applications of computer science to the mathematical modeling of complex systems in the fields of science, engineering, and finance. Papers here are interdisciplinary and applications-oriented, focusing on techniques and tools that enable challenging computational simulations to be performed, for which the use of supercomputers or distributed computing platforms is often required. Includes material in ACM Subject Classes J.2, J.3, and J.4 (economics).
- cs.CG - Computational Geometry ( new , recent , current month ) Roughly includes material in ACM Subject Classes I.3.5 and F.2.2.
- cs.GT - Computer Science and Game Theory ( new , recent , current month ) Covers all theoretical and applied aspects at the intersection of computer science and game theory, including work in mechanism design, learning in games (which may overlap with Learning), foundations of agent modeling in games (which may overlap with Multiagent systems), coordination, specification and formal methods for non-cooperative computational environments. The area also deals with applications of game theory to areas such as electronic commerce.
- cs.CV - Computer Vision and Pattern Recognition ( new , recent , current month ) Covers image processing, computer vision, pattern recognition, and scene understanding. Roughly includes material in ACM Subject Classes I.2.10, I.4, and I.5.
- cs.CY - Computers and Society ( new , recent , current month ) Covers impact of computers on society, computer ethics, information technology and public policy, legal aspects of computing, computers and education. Roughly includes material in ACM Subject Classes K.0, K.2, K.3, K.4, K.5, and K.7.
- cs.CR - Cryptography and Security ( new , recent , current month ) Covers all areas of cryptography and security including authentication, public key cryptosytems, proof-carrying code, etc. Roughly includes material in ACM Subject Classes D.4.6 and E.3.
- cs.DS - Data Structures and Algorithms ( new , recent , current month ) Covers data structures and analysis of algorithms. Roughly includes material in ACM Subject Classes E.1, E.2, F.2.1, and F.2.2.
- cs.DB - Databases ( new , recent , current month ) Covers database management, datamining, and data processing. Roughly includes material in ACM Subject Classes E.2, E.5, H.0, H.2, and J.1.
- cs.DL - Digital Libraries ( new , recent , current month ) Covers all aspects of the digital library design and document and text creation. Note that there will be some overlap with Information Retrieval (which is a separate subject area). Roughly includes material in ACM Subject Classes H.3.5, H.3.6, H.3.7, I.7.
- cs.DM - Discrete Mathematics ( new , recent , current month ) Covers combinatorics, graph theory, applications of probability. Roughly includes material in ACM Subject Classes G.2 and G.3.
- cs.DC - Distributed, Parallel, and Cluster Computing ( new , recent , current month ) Covers fault-tolerance, distributed algorithms, stabilility, parallel computation, and cluster computing. Roughly includes material in ACM Subject Classes C.1.2, C.1.4, C.2.4, D.1.3, D.4.5, D.4.7, E.1.
- cs.ET - Emerging Technologies ( new , recent , current month ) Covers approaches to information processing (computing, communication, sensing) and bio-chemical analysis based on alternatives to silicon CMOS-based technologies, such as nanoscale electronic, photonic, spin-based, superconducting, mechanical, bio-chemical and quantum technologies (this list is not exclusive). Topics of interest include (1) building blocks for emerging technologies, their scalability and adoption in larger systems, including integration with traditional technologies, (2) modeling, design and optimization of novel devices and systems, (3) models of computation, algorithm design and programming for emerging technologies.
- cs.FL - Formal Languages and Automata Theory ( new , recent , current month ) Covers automata theory, formal language theory, grammars, and combinatorics on words. This roughly corresponds to ACM Subject Classes F.1.1, and F.4.3. Papers dealing with computational complexity should go to cs.CC; papers dealing with logic should go to cs.LO.
- cs.GL - General Literature ( new , recent , current month ) Covers introductory material, survey material, predictions of future trends, biographies, and miscellaneous computer-science related material. Roughly includes all of ACM Subject Class A, except it does not include conference proceedings (which will be listed in the appropriate subject area).
- cs.GR - Graphics ( new , recent , current month ) Covers all aspects of computer graphics. Roughly includes material in all of ACM Subject Class I.3, except that I.3.5 is is likely to have Computational Geometry as the primary subject area.
- cs.AR - Hardware Architecture ( new , recent , current month ) Covers systems organization and hardware architecture. Roughly includes material in ACM Subject Classes C.0, C.1, and C.5.
- cs.HC - Human-Computer Interaction ( new , recent , current month ) Covers human factors, user interfaces, and collaborative computing. Roughly includes material in ACM Subject Classes H.1.2 and all of H.5, except for H.5.1, which is more likely to have Multimedia as the primary subject area.
- cs.IR - Information Retrieval ( new , recent , current month ) Covers indexing, dictionaries, retrieval, content and analysis. Roughly includes material in ACM Subject Classes H.3.0, H.3.1, H.3.2, H.3.3, and H.3.4.
- cs.IT - Information Theory ( new , recent , current month ) Covers theoretical and experimental aspects of information theory and coding. Includes material in ACM Subject Class E.4 and intersects with H.1.1.
- cs.LO - Logic in Computer Science ( new , recent , current month ) Covers all aspects of logic in computer science, including finite model theory, logics of programs, modal logic, and program verification. Programming language semantics should have Programming Languages as the primary subject area. Roughly includes material in ACM Subject Classes D.2.4, F.3.1, F.4.0, F.4.1, and F.4.2; some material in F.4.3 (formal languages) may also be appropriate here, although Computational Complexity is typically the more appropriate subject area.
- cs.LG - Machine Learning ( new , recent , current month ) Papers on all aspects of machine learning research (supervised, unsupervised, reinforcement learning, bandit problems, and so on) including also robustness, explanation, fairness, and methodology. cs.LG is also an appropriate primary category for applications of machine learning methods.
- cs.MS - Mathematical Software ( new , recent , current month ) Roughly includes material in ACM Subject Class G.4.
- cs.MA - Multiagent Systems ( new , recent , current month ) Covers multiagent systems, distributed artificial intelligence, intelligent agents, coordinated interactions. and practical applications. Roughly covers ACM Subject Class I.2.11.
- cs.MM - Multimedia ( new , recent , current month ) Roughly includes material in ACM Subject Class H.5.1.
- cs.NI - Networking and Internet Architecture ( new , recent , current month ) Covers all aspects of computer communication networks, including network architecture and design, network protocols, and internetwork standards (like TCP/IP). Also includes topics, such as web caching, that are directly relevant to Internet architecture and performance. Roughly includes all of ACM Subject Class C.2 except C.2.4, which is more likely to have Distributed, Parallel, and Cluster Computing as the primary subject area.
- cs.NE - Neural and Evolutionary Computing ( new , recent , current month ) Covers neural networks, connectionism, genetic algorithms, artificial life, adaptive behavior. Roughly includes some material in ACM Subject Class C.1.3, I.2.6, I.5.
- cs.NA - Numerical Analysis ( new , recent , current month ) cs.NA is an alias for math.NA. Roughly includes material in ACM Subject Class G.1.
- cs.OS - Operating Systems ( new , recent , current month ) Roughly includes material in ACM Subject Classes D.4.1, D.4.2., D.4.3, D.4.4, D.4.5, D.4.7, and D.4.9.
- cs.OH - Other Computer Science ( new , recent , current month ) This is the classification to use for documents that do not fit anywhere else.
- cs.PF - Performance ( new , recent , current month ) Covers performance measurement and evaluation, queueing, and simulation. Roughly includes material in ACM Subject Classes D.4.8 and K.6.2.
- cs.PL - Programming Languages ( new , recent , current month ) Covers programming language semantics, language features, programming approaches (such as object-oriented programming, functional programming, logic programming). Also includes material on compilers oriented towards programming languages; other material on compilers may be more appropriate in Architecture (AR). Roughly includes material in ACM Subject Classes D.1 and D.3.
- cs.RO - Robotics ( new , recent , current month ) Roughly includes material in ACM Subject Class I.2.9.
- cs.SI - Social and Information Networks ( new , recent , current month ) Covers the design, analysis, and modeling of social and information networks, including their applications for on-line information access, communication, and interaction, and their roles as datasets in the exploration of questions in these and other domains, including connections to the social and biological sciences. Analysis and modeling of such networks includes topics in ACM Subject classes F.2, G.2, G.3, H.2, and I.2; applications in computing include topics in H.3, H.4, and H.5; and applications at the interface of computing and other disciplines include topics in J.1--J.7. Papers on computer communication systems and network protocols (e.g. TCP/IP) are generally a closer fit to the Networking and Internet Architecture (cs.NI) category.
- cs.SE - Software Engineering ( new , recent , current month ) Covers design tools, software metrics, testing and debugging, programming environments, etc. Roughly includes material in all of ACM Subject Classes D.2, except that D.2.4 (program verification) should probably have Logics in Computer Science as the primary subject area.
- cs.SD - Sound ( new , recent , current month ) Covers all aspects of computing with sound, and sound as an information channel. Includes models of sound, analysis and synthesis, audio user interfaces, sonification of data, computer music, and sound signal processing. Includes ACM Subject Class H.5.5, and intersects with H.1.2, H.5.1, H.5.2, I.2.7, I.5.4, I.6.3, J.5, K.4.2.
- cs.SC - Symbolic Computation ( new , recent , current month ) Roughly includes material in ACM Subject Class I.1.
- cs.SY - Systems and Control ( new , recent , current month ) cs.SY is an alias for eess.SY. This section includes theoretical and experimental research covering all facets of automatic control systems. The section is focused on methods of control system analysis and design using tools of modeling, simulation and optimization. Specific areas of research include nonlinear, distributed, adaptive, stochastic and robust control in addition to hybrid and discrete event systems. Application areas include automotive and aerospace control systems, network control, biological systems, multiagent and cooperative control, robotics, reinforcement learning, sensor networks, control of cyber-physical and energy-related systems, and control of computing systems.
- Institutions Ranked
Best Paper Awards in Computer Science
Collection of best paper awards for 30 computer science conferences since 1996
This is a collection of best paper awards from conferences in each computer science subfield, starting from 1996. Originally, the broadest representative conference for each subfield were selected to be included. This data was entered by hand from sources found online (many of them no longer available), so please email email@example.com if you notice any errors or omissions. The page is maintained annually by Jeff Huang . Thanks to contributions from Mingrui Ray Zhang (2017, 2018), Will Gierke (2019, 2020), Alice Marbach (2019, 2020), AllenAI's Dawn Howell (2019, 2020), Long Do (2021), and Shaun Wallace (2021).
Caveats: Note that some conferences do not have such an award; "Distinguished paper award" and "outstanding paper award" are included but not "best student paper" or "best 10-year old paper"; at this point, it is unlikely that new additional conferences will be added due to the ongoing time commitment to prepare updates (about 10 hours a year); only each author's first affiliation is listed due to how the data was originally stored.
You should be reading academic computer science papers
[Ed. note: While we take some time to rest up over the holidays and prepare for next year, we are re-publishing our top ten posts for the year. This is our number one post of 2022! Thanks for reading and we’ll see you in the new year. ]
As working programmers, you need to keep learning all the time. You check out tutorials, documentation, Stack Overflow questions, anything you can find that will help you write code and keep your skills current. But how often do you find yourself digging into academic computer science papers to improve your programming chops?
While the tutorials can help you write code right now, it’s the academic papers that can help you understand where programming came from and where it’s going. Every programming feature, from the null pointer (aka the billion dollar mistake ) to objects (via Smalltalk ) has been built on a foundation of research that stretches back to the 1960s (and earlier). Future innovations will be built on the research of today.
We spoke to three of the members of the Papers We Love team, an online repository of their favorite computer science scholarship.
Zeeshan Lakhani, an engineering director at BlockFi, Darren Newton, an engineering team lead at Datadog, and David Ashby, a staff engineer at SageSure, all met while working at a company called Arc90. They found that none of them had formal training in computer science, but they all wanted to learn more. All three came from humanities and arts disciplines: Ashby has an English degree with a history minor, Newton went to art school twice, and Lakhani went to film school for undergrad before getting a master’s degree in music and audio engineering. All of those fields of study rely heavily on reading texts that built the foundation of the discipline as to understand the theory that underlies all practice.
Like any good student of the humanities, they went looking for answers in the archives. “I had a latent librarian inside,” said Newton. “So I’m always interested in the historical source material for the things that I do.”
As part of learning more about the history of programming, Ashby was reading Tracy Kidder’s Soul of a New Machine , about the race to design a 32-bit microcomputer in the late 70s. It covered both the engineering culture at the time and the problems and concepts those engineers wrestled with. This was before the time of mass-market CPUs and standard motherboard components, so a lot of what we take for granted today was still being worked out.
In Kidder’s book, Lakhani, Newton, and Ashby saw a whole history of computer science that they had no connection with, so they decided to try reading a foundational paper: Tony Hoare ’s “ Communicating Sequential Processes ” from 1978. They were working on Clojure and Clojurescript at the time, so this seemed relevant. When they sat down to discuss the paper, they realized they didn’t even know how to approach understanding it. “It was like, I can’t understand half of this formalism, but maybe the intro is pretty good,” said Lakhani. “But we need someone like David Nolen to explain this to us.”
Nolen was an acquaintance who worked for The New York Times . He gave a talk there about Clojure and other Lisp-like languages, referencing a lot of John McCarthy’s early papers. Hearing this explanation with the academic context started turning a few gears in their minds. That’s when the idea of Papers We Love was born.
Knowing the history of the computing concepts that you use every day unlocks a lot of understanding into how they work at a practical level. The tools that you use, from databases to programming languages, are built on a foundation of academic research. “Understanding the roots of the things you’re working on unlocks a lot of knowledge that you’re not going to get purely just by using every day because you don’t understand the paths that they didn’t go down,” said Ashby.
There’s a talk they love that Bret Victor gave in 2013 called “ The Future of Programming .” He’s dressed like an engineer from the 70s, white button-up, khakis, pocket protector. He starts giving his talk using an overhead projector that has the name of the talk. He adjusts the slide and it reveals that the date is 1973. He goes on to talk about all the great things coming out of research, all the things that are going to shake up computer science. And they’re all things that the audience is still dealing with, like the move from sequential execution to concurrent models.
“The top theme was that it takes a long time,” said Lakhani. “There’s a lot of things that are old that are new again, over and over and over.” The same problems are still relevant, whether because the problems are harder than once thought or because the research into those problems has been widely shared.
The trio behind Papers We Love aren’t alone in discovering a love for computing’s history. There is an increased interest in retrocomputing , engineers looking at the systems of the past to learn more about the practice of technology. It’s the flipside of looking at older papers; you look at the old hardware and software programmers used and work on it with a present-day mindset. “A lot of people are spinning up these ancient operating systems on Raspberry PIs and working with them,” said Newton. “Like spinning up an old Smalltalk VM on a Raspberry PI or recreating a PDP-10.”
When you see these issues in their initial contexts, like reading the research papers that tried to address them, you can get a better perspective on where you are now. That can lead to all sorts of epiphanies. “Oh, objects do the things they do because of Smalltalk back in the 80s,” said Ashby. “And that’s why big systems look like that. And that’s why Java looks like that.”
That new understanding can help you solve the problems that you face now.
The future of programming (today)
There’s more to reading research papers than understanding history; you can find new ways to solve problems by reading current research. “The idea of Stack Overflow is: someone else has had your problem before,” said Ashby. “Academic papers are: someone else has thought about this problem before.”
If your work involves building variations of the same old CRUD app in new spaces, then maybe research papers won’t help you. But if you are trying to solve the unique problems of your industry, then some of the research in those problem spaces may help you overcome them. “I find papers to expand the idea of what’s possible with the work you do,” said Ashby. “They can help you appreciate that there are other ways to solve these problems.”
For Newton and his colleagues at Datadog, academic papers are an integral part of their work. Their monitoring software has to process a lot of information in real time to give engineers a view of their applications and the stack they run on. “We are very concerned with performance algorithms and better ways to do statistics on large volumes of data ,” said Newton. “We need to rely on academic research for some of that.”
Just because research exists, of course, it doesn’t mean your problems are automatically solved. Sometimes a single paper only gets you part of the solution. “I was at Comcast where we wanted to leverage load balancing work that we do in terms of routing,” said Lakhani. “We ended up applying three different kinds of papers that didn’t know each other. We put semantics into network packets, routed them based on another paper via a specific protocol, and implemented a bunch of IETF specs. Part of this work now lives in a Rust library people can run today.” It’s finding threads in academic work and braiding them together to solve the problems at hand.
Without reading those papers, Lakhani’s team wouldn’t have been able to design such an effective solution. Perhaps they would have gotten there on their own. But imagine the amount of work to research those three concepts; there’s no need to redo their work if it’s already been done. It’s standing on the shoulders of giants, as the saying goes, and if you’re on top of the research in your field, you know exactly which giants to stand on.
A map of the giants’ shoulders
Naturally, being a graduate of the humanities myself, I wanted to know which were the giants of computer science, those papers that would be on the syllabus if you were to construct a humanities-style curricula for a class. Think of it as a map of which giant shoulders you could stand on to get ahead.
It turns out, I’m not the first to wonder what’s in the computer science canon. In 1996, Phillip Laplante wrote Great Papers in Computer Science , which might be a bit outdated at this point. For a more recent take on the same thing, the trio recommend Ideas That Created the Future , published last year. Lakhani, who is now doing a PhD in computer science at Carnegie Mellon University (my alma mater), points out that there was a course when he arrived that covered the important papers of the field.
In a way, this canon is exactly what the Papers We Love repo aims to create. It contains papers and links to papers organized by topic. The group welcomes new pull requests with academic papers that you all love and want to see spotlighted.
Here are a few papers (and talks) that they recommended to anyone wanting to get started reading the research:
- Dynamo: Amazon’s Highly Available Key-value Store
- A Unified Theory of Garbage Collection
- Communicating Sequential Processes
- Out of the Tar Pit
Of course, there are many more.
If you’re intimidated by starting on a paper, then check out some of Papers We Love’s presentations , which offer a primer on how to understand a paper. The whole idea of these talks is borne out of that first frustration with a paper, then finding a path through it with someone else’s help. “They’ve gotten the CliffsNotes,” says Lakhani. “Now they can attack the paper and really understand it.”
The Papers We Love community continues to try to build a bridge between industry and academia. Everyone benefits—the industry gets access to new solutions without having to wait for someone else to implement and open-source them, and academics get to see their ideas tested and implemented in real situations.
“One of the goals of Papers We Love is to make it where you find out about stuff a little bit faster,” said Lakhani. “Maybe that changes things.”
The Overflow #159: Our top blog posts (part 2)
Coding 102: Writing code other people can read
Comparing tag trends with our Most Loved programming languages
The Overflow #153: How to get a job in Japan
I remember a manager at IBM talking about the time they took two academic computer scientists on for a sabbatical year. “Most of our guys”, he said, “given a problem, would start sketching out a solution on the whiteboard. These guys would head to the library to find out whether it was a known problem with a known solution”.
“These guys would head to the library to find out whether it was a known problem with a known solution.”
So todays “googling” it?
In my recent experience, the first response page from “googling it” often features various Stack Overflow items that correspond to your search terms. INCREDIBLY useful for solving immediate problems, or things very similar to it. Not so much for understanding the undercurrents, or why you might have stumbled on a more pervasive problem than just your current issue.
We need to be willing to go to the next page, or use broader search terms, for that kind of insight. That seems more like the modern analog to “go to the library.”
Their trying to find the main source of the publication of the process. Having others to combine their knowledgeable findings of that proposing task. Being the problem or solution was involved in or around the known occupant’s involved in this situation. Still, separation of the whereabouts of the incident is never fully managed to have a resulting demeanor in this situation with the subject.
What? I did not understand this. It read to me like nonsensical word salad. Likely computer-generated.
The unified theory of garbage collection link is dead. Could this be it? https://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.91.2307&rep=rep1&type=pdf
Web Archive to the rescue. https://web.archive.org/web/20210604101836/https://researcher.watson.ibm.com/researcher/files/us-bacon/Bacon04Unified.pdf
Says download limit exceeded.
Slashdotting lives on!
It was garbage collected 🙂
Here is a favourite of mine:
Making reliable distributed systems in the presence of software errors PhD thesis of Joe Armstrong, Erlang’s co-inventor, describing the origins of Erlang.
This paper is a favourite of mine:
I completely agree! I created a unique open source tool I named RefactorFirst based on an academic paper – https://github.com/jimbethancourt/RefactorFirst It’s still a work in progress, but I’ve had a positive reaction so it far. Enjoy!
I want to start reading computer science past papers.
I think that if you’re doing novel-ish or very specific work then you can potentially get a lot out of research papers.
But if you’re looking to deepen your general understanding of an area and learn new things – textbooks are often a much better resource imo. Here you have someone outlining a topic/subfield for you in a nice pedagogical order including what they think is most important. Which is usually a better learning resource than someone selling their idea to other researchers in a paper.
If you read a paper and just can’t understand what’s going on at all, you likely lack a lot of background knowledge. (Though it does take some experience reading papers in a particular field to get the hang of it, and not all papers are clearly written either)
Thanks for sharing, but sorry to say, this is ironically a rather historically ignorant presentation, I feel that it’s vital to not misrepresent what the root cause of these problems are.
– Visual programming: we’ve been down that route, I used systems like this. We need to be honest about the limitations of schematics, they are wonderful for certain things (showing relationships and connectivity of objects) and terrible for other things (time domain, sequential logic, etc.). Make a sequential circuit, you need a truth table to go with it, and that table is not that easy to read, whereas source code that’s sequential is fairly easy to read
– Responsiveness: We could have 60 or 120 FPS everywhere, definitely, but are people ready to take on the challenges of **real time** design? It’s not easy. I do it, and enjoy it, but there are some very real inconveniences and tradeoffs for that “snappy UI” that no amount of hardware improvements will help you with.
For example, Windows 1.0 was built to be a cooperative multitasking system, it was made to be event driven from day 1. The paint event was simply not designed to repaint 60 times a second. You can’t just trivially change from event driven “redraw when needed” to 60 FPS real-time
When you really commit to real-time, you can’t have long loops, you have to separate business logic from rendering and draw in batch all at once.
Then let’s get into networked response time, you have to have interpolation clientside, none of this “send a packet and wait for the result”, you just go go go, with the best approximation of accuracy that you have **right now**, that means your client will always be a little behind the server, like a game. This is fine if you are prepared for it, you have to have a snapshot system, rollback netcode, and be prepared for the client to be wrong. Real-time is very doable and fascinating (and we rely on real-time systems to do stuff like keep power plants and factories running), and I would love to see more of it, but it certainly isn’t easy.
Massively parallel: Threads and locks are not even 0.001% of the problem, see “Designing Data Intensive Applications”, https://www.amazon.com/Designing-Data-Intensive-Applications-Reliable-Maintainable/dp/1449373321/ , this book is so fascinating. Whether you scale up or scale out, it’s a very different mindset, not unlike trying to optimize an assembly line.
I feel like I am going to be doing a lot of reading…writing code is way different from reading it and i feel that all these frameworks really hide from our eyes all the ‘magic’ that causes everything to work; I sometimes even fear that a time will come when everyone will be so dependent on frameworks no one will really have the need of understanding the work that goes into creating them
The “A Unified Theory of Garbage Collection” link is broken.
This was a very interesting article. Thanks for sharing.
Is there any list of top 10 computing academic papers of all time or something similar someone could suggests?
I found the one from IBM’s relational database management particularly enlightening…
How given how expensive Science Direct … journals are and how sci hub is not ‘legal’?
Leave a Reply Cancel reply
Your email address will not be published. Required fields are marked *
Save my name, email, and website in this browser for the next time I comment.
This site uses Akismet to reduce spam. Learn how your comment data is processed .
- Search Input Search Submit
- Media Center
- SIGCSE Top 10 Paper Awards
Top Ten Computer Science Education Research Papers of the Last 50 Years Recognized
At 50th anniversary sigcse symposium, leading computer science education group highlights research that has shaped the field.
New York, NY, March 2, 2019 – As a capstone to its 50th annual SIGCSE Technical Symposium , leaders of the Association for Computing Machinery (ACM) Special Interest Group on Computer Science Education (SIGCSE) are celebrating the ideas that have shaped the field by recognizing a select group of publications with a “Top Ten Symposium Papers of All Time Award.” The top ten papers were chosen from among the best papers that were presented at the SIGCSE Technical Symposium over the last 49 years.
As part of the Top Ten announcement today in Minneapolis, the coauthors of each top paper will receive a plaque, free conference registration for one co-author to accept the award and up to a total of $2,000 that can be used toward travel for all authors of the top ranked paper.
“In 1969, the year of our first SIGCSE symposium, computing education was a niche specialty” explains SIGCSE Board Chair Amber Settle of DePaul University, of Chicago, USA. “Today, it is an essential skill students need to prepare for the workforce. Computing has become one of the most popular majors in higher education, and more and more students are being introduced to computing in K-12 settings. The Top Ten Symposium Papers of All Time Award will emphasize the outstanding research that underpins and informs how students of all ages learn computing. We also believe that highlighting excellent research will inspire others to enter the computing education field and make their own contributions.”
The Top Ten Symposium Papers are:
1. “ Identifying student misconceptions of programming ” (2010) Lisa C. Kaczmarczyk, Elizabeth R. Petrick, University of California, San Diego; Philip East, University of Northern Iowa; Geoffrey L. Herman, University of Illinois at Urbana-Champaign Computing educators are often baffled by the misconceptions that their CS1 students hold. We need to understand these misconceptions more clearly in order to help students form correct conceptions. This paper describes one stage in the development of a concept inventory for Computing Fundamentals: investigation of student misconceptions in a series of core CS1 topics previously identified as both important and difficult. Formal interviews with students revealed four distinct themes, each containing many interesting misconceptions.
2. “ Improving the CS1 experience with pair programming ” (2003) Nachiappan Nagappan, Laurie Williams, Miriam Ferzli, Eric Wiebe, Kai Yang, Carol Miller, Suzanne Balik, North Carolina State University Pair programming is a practice in which two programmers work collaboratively at one computer, on the same design, algorithm, or code. Prior research indicates that pair programmers produce higher quality code in essentially half the time taken by solo programmers. The authors organized an experiment to assess the efficacy of pair programming in an introductory Computer Science course. Their results indicate that pair programming creates a laboratory environment conducive to more advanced, active learning than traditional labs; students and lab instructors report labs to be more productive and less frustrating.
3. “ Undergraduate women in computer science: experience, motivation and culture ” (1997) Allan Fisher, Jane Margolis, Faye Miller, Carnegie Mellon University During a year-long study, the authors examined the experiences of undergraduate women studying computer science at Carnegie Mellon University, with a specific eye toward understanding the influences and processes whereby they attach themselves to or detach themselves from the field. This report, midway through the two-year project, recaps the goals and methods of the study, reports on their progress and preliminary conclusions, and sketches their plans for the final year and the future beyond this particular project.
4. “ A Multi-institutional Study of Peer Instruction in Introductory Computing ” (2016) Leo Porter, Beth Simon, University of California, San Diego; Dennis Bouvier, Southern Illinois University; Quintin Cutts, University of Glasgow; Scott Grissom, Grand Valley State University; Cynthia Lee, Stanford University; Robert McCartney, University of Connecticut; Daniel Zingaro, University of Toronto Peer Instruction (PI) is a student-centric pedagogy in which students move from the role of passive listeners to active participants in the classroom. This paper adds to this body of knowledge by examining outcomes from seven introductory programming instructors: three novices to PI and four with a range of PI experience. Through common measurements of student perceptions, the authors provide evidence that introductory computing instructors can successfully implement PI in their classrooms.
5. " The introductory programming course in computer science: ten principles " (1978) G. Michael Schneider, University of Minnesota Schneider describes the crucial goals of any introductory programming course while leaving to the reader the design of a specific course to meet these goals. This paper presents ten essential objectives of an initial programming course in Computer Science, regardless of who is teaching or where it is being taught. Schneider attempts to provide an in-depth, philosophical framework for the course called CS1—Computer Programming 1—as described by the ACM Curriculum Committee on Computer Science.
6. “ Constructivism in computer science education ” (1998) Mordechai Ben-Ari, Weizmann Institute of Science Constructivism is a theory of learning which claims that students construct knowledge rather than merely receive and store knowledge transmitted by the teacher. Constructivism has been extremely influential in science and mathematics education, but not in computer science education (CSE). This paper surveys constructivism in the context of CSE, and shows how the theory can supply a theoretical basis for debating issues and evaluating proposals.
7. “ Using software testing to move students from trial-and-error to reflection-in-action ” (2004) Stephen H. Edwards, Virginia Tech Introductory computer science students have relied on a trial and error approach to fixing errors and debugging for too long. Moving to a reflection in action strategy can help students become more successful. Traditional programming assignments are usually assessed in a way that ignores the skills needed for reflection in action, but software testing promotes the hypothesis-forming and experimental validation that are central to this mode of learning. By changing the way assignments are assessed--where students are responsible for demonstrating correctness through testing, and then assessed on how well they achieve this goal--it is possible to reinforce desired skills. Automated feedback can also play a valuable role in encouraging students while also showing them where they can improve.
8. “ What should we teach in an introductory programming course ” (1974) David Gries, Cornell University Gries argues that an introductory course (and its successor) in programming should be concerned with three aspects of programming: 1. How to solve problems, 2. How to describe an algorithmic solution to a problem, and 3. How to verify that an algorithm is correct. In this paper he discusses mainly the first two aspects. He notes that the third is just as important, but if the first two are carried out in a systematic fashion, the third is much easier than commonly supposed.
9. “ Contributing to success in an introductory computer science course: a study of twelve factors ” (2001) Brenda Cantwell Wilson, Murray State University; Sharon Shrock, Southern Illinois University This study was conducted to determine factors that promote success in an introductory college computer science course. The model included twelve possible predictive factors including math background, attribution for success/failure (luck, effort, difficulty of task, and ability), domain specific self-efficacy, encouragement, comfort level in the course, work style preference, previous programming experience, previous non-programming computer experience, and gender. Subjects included 105 students enrolled in a CS1 introductory computer science course at a midwestern university. The study revealed three predictive factors in the following order of importance: comfort level, math, and attribution to luck for success/failure.
10. “ Teaching objects-first in introductory computer science ” (2003) Stephen Cooper, Saint Joseph's University; Wanda Dann, Ithaca College; Randy Pausch Carnegie Mellon University An objects-first strategy for teaching introductory computer science courses is receiving increased attention from CS educators. In this paper, the authors discuss the challenge of the objects-first strategy and present a new approach that attempts to meet this challenge. The approach is centered on the visualization of objects and their behaviors using a 3D animation environment. Statistical data as well as informal observations are summarized to show evidence of student performance as a result of this approach. A comparison is made of the pedagogical aspects of this new approach with that of other relevant work.
Annual Best Paper Award Announced Today SIGCSE officers also announced the inauguration of an annual SIGCSE Test of Time Award. The first award will be presented at the 2020 SIGCSE Symposium and recognize research publications that have had wide-ranging impact on the field.
The Special Interest Group on Computer Science Education of the Association for Computing Machinery (ACM SIGCSE) is a community of approximately 2,600 people who, in addition to their specialization within computing, have a strong interest in the quality of computing education. SIGCSE provides a forum for educators to discuss the problems concerned with the development, implementation, and/or evaluation of computing programs, curricula, and courses, as well as syllabi, laboratories, and other elements of teaching and pedagogy.
ACM, the Association for Computing Machinery , is the world's largest educational and scientific computing society, uniting educators, researchers, and professionals to inspire dialogue, share resources, and address the field's challenges. ACM strengthens the computing profession's collective voice through strong leadership, promotion of the highest standards, and recognition of technical excellence. ACM supports the professional growth of its members by providing opportunities for life-long learning, career development, and professional networking.
Contact: Adrienne Decker 585-475-4653 [email protected]
Printable PDF File
Increase your published paper (Manuscript) citation
Big Announcement!!! Grab this opportunity now!
- Publication Blog
- Arts and Humanities
Journals Sub Subject
- Agricultural Research
- Allied Science
- Ancient medicine
- Ancient Science
- Animal Research
- Animal Technology
- Aromatic Plants
Top 20 Computer science Journals
This is a list of the top 20 Computer science journals from publishers around the world, for publishing articles and research papers for medical students, professors and authors also.
if you are looking for a best list then you can find a best magazine from our list Can also be found, just click for the subject on the left and get the result according to your subject.
Computer science Journals List
Publisher IEEE Publisher
Publisher Association for Computing Machinery
Publisher Atlantis Press
Publisher MIT Press
Publisher Elsevier Publication
Publisher SAGE Publications Inc
Publisher Nature Publishing Group
Publisher Self publishing
Publisher IJACSA Publications
Publisher Gdansk Branch of Polish Academy of Sciences
Publisher Praise Worthy Prize
List of Top 20 Computer science journals , Choose a better journal for your manuscript / research paper.
See also for computer science journals.
- Main Website
- April Papers
- June Papers
- July Papers
Top 16 International Computer Science Journals — A Template Guide
MS Word, LaTeX Templates and Author Guidelines
This post is part of a series of blogs with links to Word, LaTeX templates and author instructions of top journals around the world in more than 25 core subjects in academia.
Getting started with your Research Paper Formatting
Writing a successful research paper is more than just communicating your knowledge . Most of the journals prescribe detailed set of authoring guidelines to apply on your content before you submit. Many research papers even get rejected for not following the guidelines of the journal (a reason why we built SciSpace (Formerly Typeset) — a platform to automatically apply 100% journal guidelines on your content).
To get you quickly started with your research paper formatting, this blog article lists journal formats and authoring guidelines of top international journals in Computer Science. You can find the links to MS Word template as well as LaTeX template of each of the journal here. You can also find the access link to the detailed author guidelines set by the journal. Feel free to check it out, share with friends and comment on the article.
Top International Computer Science Journals
We have used "Impact Factor" and various other parameters to rank the journals( Source ).
1. IEEE Transactions on Pattern Analysis and Machine Intelligence
IEEE Transactions on Pattern Analysis and Machine Intelligence is a monthly peer-reviewed scientific journal published by the IEEE Computer Society. It covers research in computer vision and image understanding, pattern analysis and recognition, and machine intelligence. machine learning, search techniques, document and handwriting analysis, medical image analysis, video and image sequence analysis, content-based retrieval of image and video, and face and gesture recognition.
Impact Factor — 5.694 (2013)
Journal Abbreviation — IEEE Trans. Pattern Anal. Mach. Intell.
Download MS Word Template here
Download LaTeX Template here
Check out the detailed Author Guidelines here
2. Artificial Intelligence
Artificial Intelligence is a scientific journal on artificial intelligence research. It was established in 1970 and is published by Elsevier.
Impact Factor — 3.333 (2015)
Find instructions for MS Word Template here
** The journal doesn’t provide you a MS Word template. You have to follow the author guidelines to format your document. You can also write your document on SciSpace and format it to the journal guidelines in a few click s .
3. Communications of the ACM
Communications of the ACM is the monthly Journal of the Association for Computing Machinery (ACM). The focus is on the practical implications of advances in information technology and associated management issues; ACM also publishes a variety of more theoretical journals.
Impact Factor — 3.301 (2015)
Journal Abbreviation — Commun ACM
** The journal doesn’t provide you a MS Word template. You have to follow the author guidelines to format your document. You can also write your document on SciSpace and format it to the journal guidelines in a click.
Computer is an IEEE Computer Society practitioner-oriented magazine and contains peer-reviewed articles, regular columns and interviews on current computing-related issues.
Impact Factor — 1.438 (2013)
5. IEEE Transactions on Computers
IEEE Transactions on Computers is a monthly peer-reviewed scientific journal covering all aspects of computer design. It was established in 1952 and is published by the IEEE Computer Society.
Impact Factor — 1.473 (2013)
Journal Abbreviation — IEEE Trans. Comput.
6. IEEE Transactions on Evolutionary Computation
IEEE Transactions on Evolutionary Computation is a bimonthly peer-reviewed scientific journal published by the IEEE Computational Intelligence Society. It covers evolutionary computation and related areas including nature-inspired algorithms, population-based methods, and optimization where selection and variation are integral, and hybrid systems where these paradigms are combined.
Impact Factor — 5.545 (2013)
Journal Abbreviation — IEEE Trans. Evolut. Comput.
7. IEEE Transactions on Fuzzy Systems
IEEE Transactions on Fuzzy Systems is a bimonthly peer-reviewed scientific journal published by the IEEE Computational Intelligence Society. It covers the theory, design or applications of fuzzy systems ranging from hardware to software, including significant technical achievements, exploratory developments, or performance studies of fielded systems based on fuzzy models.
Impact Factor — 6.701 (2016)
Journal Abbreviation — IEEE Trans. Fuzzy Syst.
8. Journal of Cryptology
The Journal of Cryptology is a scientific journal in the field of cryptology and cryptography. The journal is published quarterly by the International Association for Cryptologic Research.
Impact Factor — 1.021(2015)
** The journal doesn’t provide you a LaTeX template .The journal also doesn’t provide you a MS Word template. You have to follow the author guidelines to format your document. You can also write your document on SciSpace and format it to the journal guidelines in a click and download the LaTeX version.
9. IEEE Transactions on Information Theory
IEEE Transactions on Information Theory is a monthly peer-reviewed scientific journal published by the IEEE Information Theory Society. It covers information theory and the mathematics of communications.
Impact Factor — 2.65 (2013)
Journal Abbreviation — IEEE Trans. Inf. Theory
Check out MS Word Template here
Check out LaTeX Template here
10. IEEE Transactions on Neural Networks and Learning Systems
IEEE Transactions on Neural Networks and Learning Systems is a monthly peer-reviewed scientific journal published by the IEEE Computational Intelligence Society. It covers the theory, design, and applications of neural networks and related learning systems.
Impact Factor — 4.37 (2013)
Journal Abbreviation — IEEE Trans. Neural Netw. Learn. Syst
11. Journal of the ACM
The Journal of the ACM is a peer-reviewed scientific journal covering computer science in general, especially theoretical aspects. It is an official journal of the Association for Computing Machinery.
Impact Factor — 2.353 (2011)
Journal Abbreviation — J. ACM
12. Journal of Artificial Intelligence Research
The Journal of Artificial Intelligence Research is an open access peer-reviewed scientific journal covering research in all areas of artificial intelligence. Paper volumes are printed by the AAAI Press.
Impact Factor — 1.691 (2010)
Journal Abbreviation — J. Artif. Intell. Res
13. Journal of Functional Programming
The Journal of Functional Programming is a peer-reviewed scientific journal covering the design, implementation, and application of functional programming languages, spanning the range from mathematical theory to industrial practice.
Impact Factor — 1.357(2015)
** The journal doesn’t provide you a LaTeX template . The journal also doesn’t provide you a MS Word template. You have to follow the author guidelines to format your document. You can also write your document on SciSpace , format it to the journal guidelines in a click and download your document in LaTeX format.
14. International Journal of Computer Vision
The International Journal of Computer Vision (IJCV) is a journal published by Springer.
Impact Factor — 3.623 (2012)
Journal Abbreviation — IJCV
Find LaTeX instructions here
Find MS Word instructions here
** The journal doesn’t provide you a LaTeX template . The journal also doesn’t provide you a MS Word template. You have to follow the author guidelines to format your document. You can also write your document on SciSpace and format it to the journal guidelines in a click.
15. Journal of Machine Learning Research
The Journal of Machine Learning Research is a peer-reviewed open access scientific journal covering machine learning.
Impact Factor — 2.45(2015)
16. SIAM Journal on Computing (SICOMP)
The SIAM Journal on Computing ( SICOMP ) is a scientific journal focusing on the mathematical and formal aspects of computer science. It is published by the Society for Industrial and Applied Mathematics (SIAM).
Journal Abbreviation — SIAM J. Comput.
If you found this list useful, please do share top computer science journals’ templates with your fellow researchers, academics and colleagues.
A research writing tool that helps you follow 100% guidelines
Adhering to fuzzy journal guidelines that runs to hundreds of pages is every researcher’s nightmare. That’s where SciSpace comes in.
SciSpace has around 14000 journal templates and enables you to format or re-format your research paper to all of the journal guidelines with 100% accuracy. What more, you save loads of your time while doing it .
SciSpace also has various University thesis, assignments and top international Conferences’ templates. Check it out here .
Before you go, SciSpace may be of interest if you are trying to simplify their research workflows. Discover, write, and collaborate on research papers using this comprehensive end-to-end solution. Your scholarly output can be displayed and managed seamlessly with the tools and resources we provide.
By combining writing and publishing tools, copyright detection technology, and searchable indexing, this platform will let you display and manage your scholarly output.It is a good idea to make notes about your citations while conducting a literature review. With SciSpace Discover, it is easy to cite your sources. Using the citation button on an article page, you can generate citation text that is preloaded in multiple formats, so you can copy and paste as you need.
- Top 11 international Biology journals — a template guide
- Top 13 international Material Science journals- a template guide
- Template collection of top Chemistry journals
- How SciSpace simplifies your research writing
2 Minute Papers · Bell System Technical Journal, 1922-1983 · Best Paper Awards in Computer Science · Facebook · Google Scholar · Microsoft Research · Functional
The Top 10 research papers in computer science by Mendeley readership. · 1. Latent Dirichlet Allocation (available full-text) · 2. MapReduce :
Papers on all aspects of machine learning research (supervised, unsupervised, reinforcement learning, bandit problems, and so on) including also robustness
Best Paper Awards in Computer Science ; NvMR: Non-Volatile Memory Renaming for Intermittent Computing ; Abhishek Bhattacharyya, University of
He goes on to talk about all the great things coming out of research, all the things that are going to shake up computer science. And they're
Software engineeringEdit · Peter Naur, Brian Randell (eds.) Garmisch, Germany, 7–11 October 1968, Brussels, Scientific Affairs Division, NATO (1969) 231pp.
Best Computer Science Journals · IEEE Transactions on Pattern Analysis and Machine Intelligence · IEEE Transactions on Image Processing · IEEE Access · IEEE
An objects-first strategy for teaching introductory computer science courses is receiving increased attention from CS educators. In this paper
Computer science Journals List · 1) IEEE Transactions on Computers · 2) Journal of the ACM · 3) IEEE Transactions on Pattern Analysis and Machine Intelligence · 4)
Top 16 International Computer Science Journals — A Template Guide · 1. IEEE Transactions on Pattern Analysis and Machine Intelligence · 2. Artificial Intelligence.