10 free online courses to learn to code


10 free online courses to learn to code

Application development is an industry that offers many opportunities; Learning to program can open the doors to this sector for us and can be an interesting career opportunity. Thanks to the Internet, nowadays we can learn to program without having to attend a class, we can do it from home thanks to edX, Udacity or Coursera, where free and quality training programs are offered.

aprender a programar

A few days ago it was the 25th anniversary of the World Wide Web. A quarter of a century in which, thanks to the web, knowledge has become much more accessible and universal; nowadays we can find multiple sources of information with which to delve into the topics that interest us and even train at a distance. Blogs, forums,podcasts, videos on sites such as YouTube or training platforms, such as those that have emerged in recent years, are some of the reference sources that we can find on the net and with which we can train are schedules and without having to travel to a physical classroom.

Training through the Internet is not synonymous with low quality; Thanks to sites such as edX (which originated from MIT), Coursera (in which there are courses from universities around the world) or Udacity, today we can find on the net quality training and, furthermore, so free. A good way to expand our knowledge or start training in topics in which we have a special interest and, for example, improve our professional profile.

It is not the first time that, in Bitelia, we look at the world of education and training on-line; in the network there are very good training programs in which we can enter the exciting world of development and the programming, a good way to take our first steps in the world of application development and, perhaps, thus guide our professional future.

We are going to review some training offers that are open so that we can register and, in this way, learn to program:

Intro to Programming (Problem Solving with Java)

Intro to Programming (Problem Solving with Java) is a program that we can find in Udacity and that aims to introduce the student to the development of software. The course, taught by a professor at San Jose State University and also by a former manager from Microsoft, part of the most basic concepts of software development (algorithms, basic structures ...) to create a base that allows the student to understand the basic scheme of a program, the importance of commenting on the code to be able to reuse it later and, of course, learn to program with an object-oriented language such as Java.

To enroll in this course it is not necessary to have previous programming knowledge; in fact, the idea is to begin to learn the basics and, thus, establish a base that allows to continue expanding knowledge.

Introduction to Computer Programming

Introduction to Computer Programming is a training program that has two coursestaught by the Bombay Institute of Technology. Each of these courses, each lasting about six weeks, aims to introduce students to the world of programming, of course, starting from the basics; It is not necessary to know how to program beforehand, but it is recommended that knowledge of calculus or mathematics is recommended because the student is introduced to algorithms.

The program is structured by a first basic part in which aspects such as algorithms, basic data structures, iterative programming, matrices and tables are dealt with, to later move on to the handling of character strings, pointers and handling of graphics. The course revolves around C language and during the course this language is studied and also C ++ to introduce the student to object-oriented programming.

10 cursos online gratuitos para aprender a programar

Compilers

Compilers It is the name of a curious course that Stanford University teaches through Coursera; a training program with an advanced level that aims to introduce the student to the world of compilers. When we write a program in a certain language, the code must be compiled into a low-level language that allows the program to run on any machine; the person responsible for this transformation is the compiler and, precisely, this is the core of the course.

The idea is to understand how the code compilation process works; understand the process of analyzing syntax, checking for errors or the intermediate transformations that are carried out to the code that we have written to transform it into a software fully functional. For the more advanced students, the course offers the possibility of carrying out a "final work" in which the student develops their own compiler.

Design of Computer Programs

Design of Computer Programs It is a course that we can find in Udacity and that, in my opinion, is worth reviewing. The instructor for this course is Peter Norvig, Google's director of research; a teacher with enough technical solvency to enter an advanced level of programming.

This course requires prior knowledge and is at an advanced level; the approach is practical and oriented towards solving complex problems, so it is interesting to have taken the odd previous introductory course on programming or algorithms.

Creative programming for digital media and mobile applications

Creative programming for digital media and mobile applications It is a very unique training program that we can find on Coursera; Taught by professors and researchers at the University of London, this course addresses programming from a rather curious perspective: its application to multimedia content and mobile applications.

More than a course aimed at learning to code, this course aims to help us learn to use our technical knowledge in creative areas. In other words, the objective of this course is that we are able to start the development of a video game or, for example, participate in the construction of an interactive music system; creative projects that have a technological base.

Programming Languages: Building a Web Browser

Programming Languages: Building a Web Browser is a course that is available on Udacity and is taught by a professor at the University of Virginia. The objective of this course is to introduce us to the world of development of software but with a particularity; the approach will be practical and the student will develop their own web browser.

The idea is that the student is introduced to regular expressions, the analysis of code structures or the interpretation of a code. Precisely, as an example of interpreting HTML and JavaScript code, the student will develop his own browser to verify that he has assimilated the knowledge that has been taught in the course.

Learning to Program: Building a Quality Code

Learning to Program: Building a Quality Code is the title of a course that I find especially interesting if, for example, you want to work on development projects of software. Normally we tend to focus on application development, that is, learning to program; however, from a professional perspective, the quality of the products is important.

The objective of this course is to introduce the student to the importance of the quality of software; that is, an application must not only work, it must also be efficient and the code should be understandable without the need to "reverse engineer" it. The course, taught by professors from the University of Toronto, is a good basis for entering the world of testing and debugging although, yes, it is important to know some programming before taking this course on optimization and quality.

Software Testing: How to Make Software Fail

Software Testing: How to Make Software Fail It is a Udacity course very oriented to professionals or people who already have previous knowledge about programming. The course is also oriented to quality of software Although, yes, his focus is on the testing Of applications.

The course focuses on the final phase of a product software: the tests that we must carry out to verify that the application works properly. The objective of this course, taught by a professor at the University of Utah, is to learn to hunt bugs and find bugs before, for example, we move an application to a production environment. Obviously, if we learn to hunt bugs already check software, we will also learn to develop better.

Desarrollo web

Web Application Architectures

In Web Application Architectures, a course that we can find on Coursera thanks to the University of New Mexico, we will find a training program oriented to the development of web applications. The course is very focused on engineering; It is not a course to learn HTML and develop a web, its objective is that we learn to raise the architecture of an application based on the superposition of layers of abstraction.

The subject is quite complex and, in fact, the course is an introduction that aims to get the student interested in the subject and continue investigating on their own, although, yes, it also has its practical part thanks to the development in Ruby on Rails as framework reference.

Introduction to databases

We could not close this review without focusing on one of the basic pillars of many of the applications we use every day: databases. On Introduction to databases, a course that we will find on Coursera thanks to Stanford University and that has been one of the most widely accepted of this platform, we will find the necessary information to take our first steps in integrating databases into our applications.

The course introduces us to the design of databases using the UML language, we will learn to design the "entity-relationship" models that form a database, the student is introduced to SQL statements to perform queries or operations with a database. of data among other aspects. This course is introductory, therefore, it is not necessary to have previous knowledge in databases.

Previous Some terms and concepts related to Free Software that you should know
Next Children's Day

1 Comment

  1. Erika miller
    20/02/2020
    Reply

    Is it okay if we feature your site in our next email newsletter? It's a perfect fit for a piece we're doing and I think our audience would find some of the content on your site super useful.

    I know you're probably busy, so just a simple yes or no would suffice.

    Many Thanks,

Leave a reply

Your email address will not be published. Required fields are marked *

MENU

Back