Ruby, MySQL, HTML, CSS, Ruby On Rails
Web development demystified
You are a very good computer user. You know how to browse on Internet, edit documents on your favorite rich text editor, exchange e-mails, subscribe to newsletters, Skype with your friends. You have a Facebook account or a Twitter one. And...
You always wanted to know how this machine does so many things. You always wanted to start understanding those strange people called developers or programmers.
But you didn't know where to start from.
We will go step by step to understand what a computer program is. We will get acquainted with stuff like databases and web pages, HTML and CSS. And we will build our first web application.
It is a rather long journey, but you will get too much out of it. And I promise!
This course is about computer programming and web development. It starts with the basics and goes to more advanced topics.
You will setup your programming environment. I give you detailed instructions on how to do it. Mostly is pre-configured and ready for you to start creating computer programs immediately.
You will have the chance to learn the basics of Linux, the very famous operating system, similar to Mac OS. Even if you are a Windows user, you will not have problem following this course, because we will install a Linux machine inside your Windows machine. This will give you the chance to learn about virtual machines and how useful they can be to development.
You will learn Ruby, one of the most popular programming languages, very easy to learn and start writing your programs with the least effort. I am giving you lots of lectures on Ruby with lots of hands-on exercises.
You will learn MySQL, a very popular RDBMS (Relational Database Management System). MySQL principles and how we design a robust database to save our data persistently. You will learn SQL commands like select, insert, update and delete.
You will learn HTML (HyperText Markup Language) and how you can write your own web pages. We will see all the basic elements, like html, body, headers, tables, divs e.t.c. You will also learn how to create interactive HTML pages with forms.
You will learn the basics of CSS (Cascading Style Sheets). These are documents that give instructions to web browser how to style our web pages. In other words, what font to use, what color for the text, what color for the background and more.
You will learn how to start building your own web applications, using one of the most popular web application frameworks, Ruby on Rails. You will start by creating the database and then the forms to allow the user to interact with your application. You will actually design and build a Bookstore application, that stores Authors and Books.
Senior Software Engineer
I own a Computer Science Degree from University of Athens and an MSc in Telecommunications from University College London
I love software engineering. I am passionate about my job. I find it the most creative job that one could have.
After a long software engineering life that started with C/C++, then went to Java and then to .NET Visual Basic/C#, the last 4 years, I have been developing web applications using Ruby on Rails.
I believe that Ruby on Rails dramatically increased my web application development skills. REST, HTTP, testing and the whole family of tools around it tremendously improved the quality of code I deliver.
I am always willing to take new challenges on big projects. My biggest reward is not the money that I get, but the software that I create when it makes their users happy to use it.
I am designing and developing a Ruby on Rails application using PostgreSQL as a database backend.
This is another Web application using the Ruby on Rails Web framework, with MySQL as a backend database
This is also a Web application that is using Ruby on Rails. Here, I am implementing the backend database using Riak, which is a distributed NoSQL database.
While I am working on real projects, I like to teach computer programming. I have taught to many kids and adults, either on-line or in classrooms. I am also teaching in private one-on-one style. In order to teach on-line I am using latest distance teaching technologies that render teaching as if I were sitting on the same desk with my students!
You can read more about me on my blog, here!