Web Development

The Venus Project website is the digital face of the organization but it’s something significantly different than most commercial websites. It aims to provide information to its audience in a systematic way so they are able to learn easily from the vast pool of knowledge that has been collected throughout the years. Continuous improvement is at the heart of the ideology proposed by The Venus Project and we always strive to design and create better content. We are only a handful of volunteers who are constantly improving the website and we would love to have you on board with us.

We are responsible for:

  • Ensuring that all functionality on the website consistently works as expected;
  • Researching, testing and implementing technical solutions to problems that The Venus Project faces in pursuing its Aims and Proposals;
  • Further developing The Venus Project’s web platform and the underlying infrastructure
  • Maintaining and bug-fixing the servers and the software

Our Website is hosted at SiteGround and at the core it’s driven by the content management system WordPress.

The core functionality is provided by these plugins and extensions:

We are always looking for new people with skills and enthusiasm to take The Venus Project’s website to a new level. We value experience and professionalism but most of all we value the efforts of people that are dedicated to this cause.

If you want to contribute to the constantly ongoing web development, these are the requirements:

  • Experience with any of the above platforms, extensions and plugins
  • Knowledge of some or all of the following:
    • PHP
    • MySQL
    • Javascript/jQuery
    • HTML / CSS
    • Apache
    • nginx
    • Linux server administration
    • Web security expertise
    • Postmaster skills

Don’t worry if none of this applies to you. You can still become a part of the team. If you don’t possess any of the mentioned skills but you would like to learn them, see the section below. It will provide you a learning path so that you would eventually be able to join our team and contribute.

To get involved with the Web Development team, please follow the steps on this page.

Learn Web Development

For those who do not have web development skills but would like to learn them, we have compiled a list of resources to help you do that. Before you start, here are some general guidelines to follow throughout your learning experience:

– Do all the exercises from the tutorials. Take the time to complete the steps and tasks they give you. Don’t just watch how they do it. Real learning happens when you do it yourself.
– Do not copy and paste code. Instead, when a tutorial goes through some code, type it manually yourself. This will help you think about what is actually happening in the code. You will understand it much better if you write it instead of just looking at it.
– Try very hard to understand what is happening at every single line of the code that is being analyzed in a tutorial. Take your time and really think it through. What is actually happening in the code and why is it done this way? Sometimes you may just need to give yourself some time and think about it, other times you may need to research it. If you need to research it, it is likely that you would need to read the documentation about the syntax of the language that occurs on the line you don’t understand. (As an example, if we have the code 1 !== "1", we might need to read the documentation on integers (like 1), on strings (like "1") and on the !== operator.)
– The sooner you start doing projects by yourself from scratch, the better. So, as soon as you start feeling comfortable with the basics of some language, perhaps after completing a tutorial, try to do at least one project all alone, by yourself. Try to come up with a project that is more or less at your level. It’s one thing to follow a tutorial, but it’s a very different thing to have to come up with a plan for how to do the whole job, completely on your own. Doing this will also force you to read the documentation of some of the language’s syntax that you might need to use, so your knowledge will become much deeper this way.

If you are looking to get involved in web development (which means creating programs and websites that are available on the Internet, not just on your computer), the place to start with is HTML. Then continue with CSS. After that you may continue with either Javascript or PHP. (We have not included languages that aren’t used in the platforms The Venus Project utilizes.)

HTML
1. http://htmldog.com/guides/html/beginner/

This is an introduction to the basics of HTML.

2. http://www.w3schools.com/html/

This is a much more comprehensive tutorial of HTML. Don’t try to memorize everything here. Rather, try to understand the concepts behind the various HTML tags. Then, whenever you need to remind yourself of what exactly some tag does or what attributes there are for it, you will know where exactly to go and look up that information.

CSS
Note: keep in mind that you need some basic knowledge of HTML before diving into CSS.

1. http://www.w3schools.com/css/

This tutorial gives you all the basic theoretical knowledge you need in order to understand what CSS is about and what you can do with it.

2. HTML5 and CSS3 beginner tutorial

This is a video tutorial that goes through many basics. You can take a look at some practical, real-world coding in action.

3. http://jigsaw.w3.org/css-validator/#validate_by_input

The CSS validator can discover bugs in your code, even in your entire website, so it can be invaluable.

4. http://www.csszengarden.com/

Some inspiration.

Javascript
Note: before going into Javascript, you need to have knowledge of HTML and CSS.

1. http://www.w3schools.com/js/default.asp

W3Schools’ tutorial seems like a good starting point.

2. http://www.codecademy.com/en/tracks/javascript

Another good tutorial.

3. Javascript Essential Training

You will be building a lot more complex things that are closer to real-world applications.

4. Practical and Effective Javascript

This tutorial provides some very important and useful information about various aspects of Javascript.

5. https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference

When you are at the beginning of learning Javascript, you might be going to the W3Schools reference when you need to look up a function or a DOM element. After some time, however, you might want to switch to a much more technical and detailed documentation. MDN provides just that.

jQuery
Note: jQuery is a Javascript library. You would first need to learn Javascript before learning jQuery.

1. http://www.w3schools.com/jquery/

W3Schools’ tutorial again offers nice and simple explanations.

2. jQuery Essential Training

Essential training.

PHP
Note: before starting to learn PHP, you will need to have an understanding of HTML. We also recommend CSS.

1. PHP6 and MySQL Bible

This book might seem a little hard for a beginning. However, the examples inside, while requiring a lot of thought, will give you a much deeper understanding of how PHP works.

2. Diving into PHP

Jeffrey Way moves fast in this series of very valuable tutorials. Make sure you follow what is happening.

3. PHP with MySQL Essential Training

Now we dive deeply and start building a real website. Make sure you do the assignments!

4. PHP with MySQL Beyond the Basics

A next-level continuation of the above tutorial. It gets into Object-Oriented Programming (OOP).

5. Pro PHP Security

Pro PHP Security covers a wide variety of security essentials. Before you make any applications live on the Internet, read this book. It will introduce you to many security concerns that you really need to know about.

SQL
1. http://www.w3schools.com/sql/

A basic introduction to SQL.

2. SQL: A Beginner’s Guide, Third Edition

This book covers SQL in depth and in a very accessible way. Easy to read and has practical exercises.

Wordpress
1. WordPress database structure

An overview of the WordPress database structure.

2. Default Post Types

How WordPress organizes its content into units called “post types”. Learn about the default post types that are predefined for you.

3. Custom Post Types

Beyond the predefined post types in WordPress, there exists the possibility for defining your own custom post types. This offers unlimited opportunities for organizing content into whatever units you wish. Truly powerful.

Related Posts