Online courses directory (684)
Cryptography is essentially the science of writing in secret code. In data and telecommunications, cryptography has specific security requirements, such as authentication, privacy or confidentiality, integrity, and non-repudiation. To meet these security requirements, we employ secret key (or symmetric) cryptography, public-key (or asymmetric) cryptography, and hash functions. In the first part of the course, we will review a number of different ciphers that were used before World War II. These ciphers would be easily broken nowadays, since cryptography has advanced quickly over the past couple of decades with the advent of modern computers. We will cover block cipher algorithms and describe the advanced encryption standard for a symmetric-key encryption adopted by the U.S. government. We will also learn about the important MD5 and SHA-1 hash functions as well as the message authentication code. This course will focus on public key cryptography, which is best exemplified by the RSA algorithm (na…
While CS403: Introduction to Modern Database Systems [1] covered many of the core concepts behind database management systems, there are many other considerations that should be addressed if you intend to pursue a career in this field. This course will expand upon what you learned about SQL in CS403 and introduce various other advanced topics, including query optimization, concurrency, data warehouses, object-oriented extensions, and XML. While CS403 introduced the basics of database management systems, the additional topics covered in this course will help you become more proficient in writing queries and will expand your knowledge base so that you have a better understanding of the field. By the end of this course, you should have a solid grasp on data warehouses and XML, which will prove to be invaluable as you progress further in your Computer Science studies. [1] http://www.saylor.org/courses/cs403/…
Technology continues to evolve and provide us with increasingly powerful mobile devices. As a result, applications that can run on a browser must also be written such that they are compatible with mobile devices, the majority of which are now web-enabled. Meanwhile, there is an increasing demand for native applications that can be downloaded to and run on mobile devices. This course will address these trends, teaching you to think about the unique design and deployment issues that must be taken into consideration when developing applications for mobile devices. This course will expand upon what has been covered in CS305: Web Development [1]. We will specifically look at the tools used to design mobile applications. We will learn about mobile platforms, mobile browsers, native applications, and best practices in terms of test usability. [1] http://www.saylor.org/courses/cs305/…
This course is designed for the novice who has little or no word processing experience. The course provides an introduction to word processing. You will explore word processing skills while also learning to create a basic business letter and a business memo. Although the resources in this course use Microsoft Word 2010, it should be noted that all of the basic skills and tasks that you will be asked can be done on any word processing program. If you stay flexible enough in your own word processing program to search out the commands and icons on whatever software you are using, you will succeed. The most current version of Microsoft Word was selected, because it would be most beneficial to the job seeker. In addition most colleges, universities, and some public libraries are using a newer version of Word. You can complete this course using any word processing software, but if you are using an older version of Word, you may also want to seek out a resource where you can interact with the newer v…
Learn the latest social media tips, tricks and techniques all catered to maximising your ROI on social media.
本课程着重于帮助学生理解编程思想,掌握基本的编程知识和技巧,并学习编写简单的程序。
This course will provide you with a comprehensive introduction to spreadsheets. The course is designed for first-time users with very little or no exposure to the subject. For this course, you will use Microsoft Excel as the software. The course will explore the following fundamental topics: an introduction to spreadsheets, terminology in Excel, components of a spreadsheet, what a cell consists of, and the creation of a spreadsheet for practical use. You will examine sample files, videos, and books that will enable you to gain practical knowledge about spreadsheets that can be used in daily life, either at work, school, or home.
This class is intended for students who have a basic understanding of spreadsheets and are now ready to delve deeper into formatting, formulas and functions, multi-page spreadsheets, charting data, creating tables that have database features, and be introduced to pivot tables. This class was designed to be an active, hands-on class. You will be creating Excel® spreadsheets and have files to open and follow along as you progress through the units. This class is not intended for a specific occupation or activity, but when you are finished with this class, you will be able to use Excel® in a variety of circumstances to format and manipulate numerical data. Although the resources in this course use Microsoft Excel® 2010, it should be noted that all of the skills and tasks that you will be asked to complete can be done in any version of Excel®. If you stay flexible enough in your thinking and search out the commands and icons on whatever software you are using, you will succeed.
Exploring geographic information systems (GIS) is a self-paced course where participants will learn about GIS and how the technology is being used in the real world to support problem-solving and decision-making. Participants will create and manage spatial databases, produce well-designed maps, and undertake spatial data analysis using free online software tools. These activities require proficiency in fundamental computer and Internet skills. Participants will have the opportunity to obtain digital badges throughout the course. This course is offered through Canvas Network as a non-credit course created by Simon Fraser University. Students enrolled in only this course are not considered students of Simon Fraser University.
This course is designed as an introduction to computer programming using Java. Students will learn how to a) analyze a problem, and identify and define the computing requirements appropriate to its solution b) design, implement, and evaluate a computer-based system, process, component, or program to meet desired needs, and c) apply design and development principles in the construction of software systems of varying complexity. Topics include Computers, programs, Java, input and output, identifiers, variables, assignment statements, constants, memory diagrams, primitive data types, conditional statements, repetition, methods, parameters, arguments, return values, one dimensional arrays, objects, classes, and classes from the Java Application Programmers Interface (API).
Digital imaging technologies are replacing the microfilm camera and photocopier as the primary mechanisms for reproducing print and graphic resources. Digitization practices do not necessarily accomplish preservation goals; only a portion of digitization programs in cultural heritage institutions produce preservation-quality results. In 2004, the Association of Research Libraries issued a position paper that supported the creation of preservation-quality digital images, citing the abundance of available standards and best practices. This course concentrates on the state-of-the-art of standards, techniques, metadata, and project requirements for the production of preservation-quality digital images. The course will consider such standards and practices within the larger context of the representation of information through technological remediation. Course Level: Graduate This Work, SI 675 - Digitization for Preservation, by Paul Conway is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike license.
This course presents material in discrete mathematics and computation theory with a strong emphasis on practical algorithms and experiential learning. Discrete mathematics, also called finite mathematics or decision mathematics, is the study of mathematical structures that are fundamentally discrete in the sense of not supporting or requiring the notion of continuity. Objects studied in finite mathematics are largely countable sets such as integers, finite graphs, and formal languages. Concepts and notations from discrete mathematics are useful to study or describe objects or problems in computer algorithms and programming languages. The CDM course is currently under development and we are making the course available while it is under development. Only one of the planned fifteen modules is currently available. The module on Groups that is currently available would appear mid-way through the complete course.
Programming is a way of organizing a task so that it is replicable by something elsea computer. If you have ever given someone directions, or written down a recipe, you have some experience with programming. Learning more about programming will help you develop the skills of thinking systematically about a task and breaking it down into manageable pieces, which can be applied in many disciplines. This class contextualizes the task of programming by focusing on media, such as images, audio, and interactive systems. By doing so, we hope to put programming in a relevant context. For example, iteration is a programming concept that is essential to creating negative and grayscale images. You will learn algorithms for blending two images together and how to hierarchical relationships are used to organize elements of a user interface. This introductory course has no particular prerequisites and is primarily designed for non-computer science students.
This course provides an introduction to Python and elementary principles of computing, including iteration, recursion, and binary representation of data. Additional topics on cellular automata, encryption, and the limits of computation are also introduced. The goal of this course is to introduce some of the techniques used in computer science to solve complex problems, with or without a computer. The Python modules are used to introduce and illustrate conditionals and iteration; additional topics are provided without using a specific programming language and can be incorporated into classes that do not use Python.
An ongoing development effort in collaboration with the Software Engineering Institute’s CERT [1], this course focuses on common security issues in C and C++ development. With security expert Robert Seacord serving as lead content author, the course addresses a key need in professional education for software developers. Topics to be covered include the secure and insecure use of integers, arrays, strings, dynamic memory, formatted input/output functions, and file I/O. Continued development is being funded by partnerships with industry. [1] http://www.cert.org/
Analyzes computational needs of clinical medicine reviews systems and approaches that have been used to support those needs, and the relationship between clinical data and gene and protein measurements. Topics: the nature of clinical data; architecture and design of healthcare information systems; privacy and security issues; medical expertsystems; introduction to bioinformatics. Case studies and guest lectures describe contemporary systems and research projects. Term project using large clinical and genomic data sets integrates classroom topics.
This course teaches the design of contemporary information systems for biological and medical data. Examples are chosen from biology and medicine to illustrate complete life cycle information systems, beginning with data acquisition, following to data storage and finally to retrieval and analysis. Design of appropriate databases, client-server strategies, data interchange protocols, and computational modeling architectures. Students are expected to have some familiarity with scientific application software and a basic understanding of at least one contemporary programming language (e.g. C, C++, Java, Lisp, Perl, Python). A major term project is required of all students. This subject is open to motivated seniors having a strong interest in biomedical engineering and information system design with the ability to carry out a significant independent project.
This course was offered as part of the Singapore-MIT Alliance (SMA) program as course number SMA 5304.
PHP is a widely used programming language which works on the principal of server side scripting to produce dynamic Web pages. It can be easily integrated with HTML and SQL to produce these dynamic web pages, and is often used to process the contents of a Web page form as it is more secure and reliable than JavaScript. This free online PHP programming course gives an overview of how PHP programming works in the Web environment and you will learn what certain commands and lines of code infer within a .php file and review the resultant effect on client side machines. MySQL is an open-source relational database management system which uses structured query language requests for working with data. You will learn how PHP can be combined with MySQL to create a very powerful online database engine. This free online PHP programming course will be of great interest to IT and Web development professionals who would like to learn more about using PHP and MySQL to integrate database functions into Websites, and to learners who would like to learn more about the functionality of PHP and MySQL.<br />
If you have studied the Introduction to Programming in C course available on ALISON it is now time to further enhance your C programming skills by studying numbers, variables and arrays and the functionality they have in computer programming. In this free online C programming course you will gain a much greater knowledge and understanding of numbers, variables and arrays. You will learn more about the basics of numeric overflow and how numbers are encoded as characters in ASCII. You will learn more about variables and the connection between function return values and variables. You will also review the use of arrays and pointers, how to create a pointer in C, and assign a value to a pointer. This free online C programming course will be of great interest to IT professionals who want to enhance their knowledge and understanding of the C programming language and its functionality, and to those learners who want to follow on from the Introduction to Programming in C course.<br />
As the world's data grow exponentially, organizations across all sectors, including government and not-for-profit, need to understand, manage and use big, complex data sets—known as big data...
Trusted paper writing service WriteMyPaper.Today will write the papers of any difficulty.