According to STEM statistics collected by the U.S. Bureau of Labor Statistics, computer science majors have extremely positive career outlooks. During the period of 2008-2018, it is projected that there will be an average of 144,500 job openings in computer sciences, and only 88,161 degree holders to fill these roles.
Computer science majors can apply their skills and knowledge to help corporations manage their technology as systems engineers, network engineers, or software developers. Alternatively, computer science majors can pursue research careers in academia, studying mathematical and computer science theories.
Academic and Professional Organizations
Computer science students can earn funds for college by applying to competitive, merit-based scholarships offered by honors societies in this field. These organizations often provide valuable networking grounds for professionals and scholars in this discipline. Professional societies can help computer science professionals gain a competitive edge with certification credentials and continued training.
- Upsilon Pi Epsilon - This is the national honors society for collegiate level computer science studies. Founded in 1967 at Texas A&M University, Upsilon Pi Epsilon has opened chapters in nearly every single state, along with a chapter in Prague. Prospective and current students can apply for the UPE scholarship award through the society website. The award ranges between $750-$1,500 for both undergraduate and graduate applicants.
- IEEE Computer Society - This is a student and professional networking society created by the Institute of Electrical and Electronics Engineers (IEEE). The computer society was founded in 1946, the year that the pivotal Subcommittee on Large-Scale Computing Devices was formed. This professional society has enlisted over 8,800 members and 19 chapters. This computing society provides dozens of IEEE online publications, national conference event listings, and job board listings for computer science students and professionals.
- Association for Computing Machinery - This is a global scientific organization with a membership comprised of researchers, faculty members, and professionals. This society hosts an impressive 170 conferences a year in cities around the world such as Singapore, Bangkok, Vienna, and San Diego. The ACM also hosts an extensive digital library of eBooks, journals, and magazines dedicated to the computer sciences.
- Association of Information Technology Professionals - This international student and professional society is dedicated to continued education and networking within the IT field. The AITP was founded in 1951 by machine accountants in Chicago. Students can apply to the Foundation for IT Education scholarship programs, which include seven different awards for undergraduates preparing to study computer sciences in college.
- The Computer Science Teachers Association - academic society is an excellent resource for students and professionals who aspire to teach computer science in a K-12 classroom environment. Some of the resources that the CSTA provides include grants, advocacy tools, and leadership cohort programs. The CTSA is highly regarded for their major research reports, which present educator techniques to foster academic interest amongst women and other industry minorities.
Open Computer Science Courseware
Many prolific academic institutions, such as Harvard, MIT, and Stanford are offering their curricula online for free. Students can follow along with video lectures, complete coursework, and code with included software tools. These courses are meant to provide accessible information to the public, and they do not provide any class credit.
- Introduction to Computer Science and Programming - This undergraduate computer sciences course is hosted by MIT OpenCourseWare. Professor John Guttag presents computer science fundamentals and the Python programming language to students without any experience in programming. The course materials include videos of lectures, online textbook downloads, exams, and assignment documents. Students can also download class-specific software from the OpenCourseWare website, which allow you to input and execute Python programming code during assignments.
- Computer Programming: Drawing and Animation - This Khan Academy course teaches the basics of computer programming using the fun and exciting mediums of iPhone apps and video games. Students can browse completed student projects to get an idea of the types of games and animations that can be created.
- Intensive Introduction to Computer Science - This course is provided by Harvard University's Open Learning Initiative. Students can follow along as Dr. David Malan lectures about data structures, boolean expressions, debugging, algorithms, and code compilers. You can download videos of each lecture in Flash, Quicktime, and MP3 formats for access on a variety of computers and mobile devices.
- Programming Methodology - Dr. Mehran Sahami from Stanford leads this course on iTunes University. Students can enter this course with little to no programming language, and learn the basics of Java programming and testing. Course materials, such as textbooks and worksheets, can be downloaded onto iOS devices directly from the iTunes University app.
- Introduction to C and C++ - This MIT open course is taught by Tom Lieber, Frank Li, and Kyle Murray. Students get hands-on experience with object-oriented programming and debugging processes. Participants can download the required programming software directly from the course webpage. Other downloadable materials include lecture notes, project worksheets, and assignments.
Open Access Computer Science Journals
You can stay on top of computer science research and industry developments by exploring free, open access journals online. Many of these publications are dedicated to a specialty topic within computer science, since it is such a broad field. These articles tend to be more scholarly in nature, reflecting the knowledge and advancements of professionals and academic departments worldwide.
- The Journal of Object Technology - This global, open access, peer-reviewed journal welcomes articles and tutorials from academics and professionals on the topic of object-oriented programming. This publication launched its first volume in May 2002, with new issues appearing several times a year since then. The editorial team consists of faculty from colleges around the world, including Purdue University, University of Lisbon, University of Genoa, and the IT University of Copenhagen.
- The Journal of Formalized Reasoning - The first volume of this international journal was released in 2008, dedicated to advanced programming theory and mathematical proofs. Computer science students and professionals might be interested in JFR articles regarding program verification and automation technologies. New issues are released once a year, with individual articles downloadable in PDF format.
- Theory of Computing - This publication is endorsed by the Association of Computing Machinery's Special Interest Group on Algorithms and Computation Theory professional organization. The Theory of Computer (ToC) features new essays and articles within the field of theoretical computing. ToC was first published in 2005, with new volumes appearing on an annual basis. ToC also releases special issues, which are dedicated to topics such as Boolean functions and workshop planning.
- Journal of Artificial Intelligence Research - Students and professionals interested in artificial intelligence (AI) will find a wealth of information in this journal, which welcomes articles about all aspects of AI. Authors published in this journal have a history of winning noteworthy awards within the AI community on an annual basis. The first issue of JAIR appeared in 1993, and new issues have been released twice a year since then.
- Logical Methods in Computer Science - The LMCS is open to publishing articles about practical and theoretical projects that involve logical methods, including concurrency theory, domain theory, algebraic methods and probability. This journal began in 2005, and new issues are released annually.
Computer Science Books
These are some of the canonical textbooks and guides in computer science, hearkening all the way back to early materials from the 1970s. These books chronicle the history and development of computer science as a field, noting major achievements by researchers globally. Some of these volumes address students who are preparing to make a jump from school to the workplace.
- The Pragmatic Programmer: From Journeyman to Master - Authors Andrew Hunt and David Thomas seek to demystify the practical programming experience from the perspective of professionals who have developed programs as products. Reviewers note the abundance of professionally relevant practices and techniques, which might not be taught within an academic atmosphere. The authors provide details about a working programmer's toolbox, which should include code generators, source code control, and debugging practices.
- Introduction to the Design and Analysis of Algorithms - This is a great primer for computer science students interested in algorithm design theory. Author Anany Levitin presents readers with fun and challenging puzzles to illustrate theories presented throughout this volume. This book translates algorithm theory down to the basics.
- Foundations of Computer Science - While this volume was first published in 1994, it still remains one of the revolutionary texts for teaching students the fundamental concepts of computer science. Dr. Alfred Aho and Dr. Jeffrey Ullman, the authors of this book, are some of the most well known names in the development of computer science. This duo shook the foundations of the field in 1977, with Principles of Compiler Design.
- Computational Complexity - Graduate students who like to grapple with theoretical puzzles will be enthralled by the 300 problems presented in this book. Professors Sanjeev Arora and Boaz Barak describe the most noteworthy computational complexity breakthroughs that have occurred within the last two decades.
- Artificial Intelligence: A Modern Approach - Authors Stuart Russell and Peter Norvig present the history and fundamental concepts of AI with clean and direct explanations, covering a breadth of topics such as adversarial search, first-order logic, classical planning, robotics, and constraint satisfaction problems. These books can be used by both undergraduate and graduate level students seeking to gain familiarity on fundamental AI theories and technologies.
Online Computer Science Magazines
There is no shortage of computer science magazines online - this is one of most visible niches when it comes to digital publishing. Several of the following magazines have been operating since the time that consumer Internet services were young, posting news about hardware and software developments.
- CNET - This online publication has been running for two decades, posting reviews of new technology, freeware downloads, and podcasts for a global consumer audience. Computer science majors can look to CNET to keep tabs on industry trends, upcoming products, and tech legislation.
- Ars Technica - Ars Technica was established in 1988 with an audience of tech professionals in mind. They have boomed in popularity, eventually becoming a part of the Conde Nast media network. Ars publishes articles and op-ed pieces the focuses on computing technology and its intersections with business, security, invention, entertainment, and ethics. Ars Technica also hosts a job board for those seeking new career opportunities within computer sciences fields.
- Make Magazine - Computer science novices and experts will get a kick out of Make Magazine's unique approach to DIY projects and beginner tutorials. Their electronics section provides a wealth of educational experiments with Arduino programming, robotics, and mobile hardware tweaks. This website is ideal for undergraduates and prospective students who enjoy technology modifications as a hobby.
- TechEye - This UK-based digital publication comes from the founder of The Register and The Inquirer, Mike Magee. TechEye posts breaking news on software developments, consumer products, business news, mobile updates, and processing chips.
- The Register - This online magazine boasted a readership of over 375,000 views per day in 2012. The contributors cover a broad range of science and technology topics, such as hardware, software, policy, business, and data center news. This is a go-to resource for tech industry professionals seeking breaking news on a broad range of devices and tech infrastructures.
Computer Science Blogs
Developer teams from large companies like Google and Microsoft do us a great service by posting about their work processes on corporate blogs. This gives students and professionals a great insiders' perspective on the types of work done in this field. Other blogs are dedicated to demystifying programming and computing processes for students just entering the field.
- Learn to Code - Lifehacker's Night School initiative led to a series of instructional blog posts about programming basics. This can be the perfect introduction for prospective computer science majors. Learn to Code introduces fundamental concepts such as basic data types, variables, and logic statements within the non-threatening format of a short blog post.
- Google Research Blog - Get an idea of what the masters of computer sciences and engineering are up to by following Google's official research blog. The posts include musings on cataloging environmental change, AI development, and the progression of tech updates per Moore's Law.
- Computational Complexity - This blog shouldn't be confused with the aforementioned book - different authors are behind this mathematical and computer science theory blog. Lance Fortnow and Bill Gasarch weigh in on tech policy changes, industry journals, and theoretical challenges.
- Turing's Invisible Hand - This blog was founded in 2009 and showcases the work of six computer science professionals and academics from across the globe. Turing's Invisible Hand focuses on game theory, computation, and economics through a computer science perspective.
- The Official Microsoft Blog - Get a better understanding of how computer science ties into business by exploring Microsoft's featured innovators and products. Microsoft fans can also branch out and explore their entire network of blogs, which are dedicated to products like Bing and the Windows Phone.
Who to Follow on Twitter
There are many exciting publications and individuals to follow on Twitter. Some of these people were instrumental in forming the Internet as we know it. Since the digital era is relatively young, pioneers in various computer science fields are reachable via social media. How thrilling is that?
- @Dr_Black - Dr. Sue Black is one of the most well-known female computer scientists. She founded BCSWomen, a group within the British Computer Society, dedicated to raising the visibility of female tech professionals. She regularly tweets about charity efforts and computer science developments.
- @Engadget - This online publication is known for live-tweeting during major national technology conferences, such as SXSW, CES, and Apple's WWDC. Get the most up-to-date information about consumer electronics by checking out their Twitter account.
- @timberners_lee - There is a reason why Sir Tim Berners-Lee has over 150,000 followers on Twitter. He is known as one of the pivotal founders of the World Wide Web. Lee currently directs the W3 Consortium, and tweets regularly about web standards news.
- @CompSciFact - Math professor John Cook runs the immensely popular Computer Science Twitter account, which posts memes, puzzles, and news for computer science thinkers to mull over. This can provide students with a refreshing and lighthearted break from their studies, while still providing very relevant information regarding computer science fields.