Ceci est une ancienne révision du document !
The last few weeks of my life have been dedicated to studying for exams, and because of this, I felt it may be a good time to write an article on free programming resources. These are links and websites I use frequently for checking syntaxes, or searching for commonly used workarounds.
Ces quelques dernières semaines ont été consacrées aux révisions pour les examens, et à cause de cela, j'ai senti que c'était le bon moment pour écrire un article sur les ressources de la programmation libre. Il y a des liens et des sites Web que j'utilise fréquemment pour vérifier la syntaxe, ou pour chercher des solutions de contournement utilisées couramment.
Web Design I decided to keep this section separate from Flexbox, since the following links apply to any web design you may do - even if you’re still working with floats and clearfixes. If you’re looking for sites to do with Flexbox, jump to the next section. • http://caniuse.com/ - This is a website dedicated to displaying the support for various properties used in web design (CSS, HTML, SVG, JS, etc). It indicates which browsers support which features, as well as giving notes on workarounds needed in certain browser versions. This can be a handy tool to decide whether or not a feature should be used in a project. • https://github.com/AllThingsSmitty/css-protips - A GitHub repository dedicated to tips and tricks for CSS, typically dedicated to using little-known features, or new implementations in CSS3. • http://codepen.io/ - A sandbox environment website where you can test out ideas, or browse other user’s “pens”. A terrific resource for being inspired, or for seeing how people have applied creativity to “standard” features. Think of it as being a bit like JSBin, but with showcasing support.
Conception Web
J'ai décidé de séparer cette section de celle sur Flexbox, car les liens suivants s'appliquent à n'importe quel conception Web que vous pouvez faire - même si vous travaillez encore avec les « floats » et les « clearfixes ». Si vous chercher des sites pour travailler avec Flexbox, passez à la section suivante. • http://caniuse.com/ - C'est un site Web dédié à la présentation d'aide pour diverses propriété utilisées dans la conception Web (CSS, HTML, SVG, JS, etc). Il indique quels navigateurs supportent quelles caractéristiques et présente aussi des notes sur les solutions nécessaires avec certaines versions de navigateur. Il peut être un outil pratique pour décider si une fonction devrait être utilisée, ou pas, dasn un projet. • https://github.com/AllThingsSmitty/css-protips - Un dépôt Github consacré aux trucs et astuces pour CSS, à l'utilisation de fonctions peu connues et aux nouvelles implémentations de CSS3. • http://codepen.io/ - un environnement de site Web « bac à sable » où vous pouvez tester des idées ou parcourir les bons papiers d'autres utilisateurs. Un ressource terrible pour ête inspiré ou pour voir comment des gens ont fait preuve de créativité avec des fonctions « standard ». Voyez-le un peu comme JSBin, mais avec l'aide de démonstrations.
Flexbox Workarounds & Bugs Since Flexbox is now pretty well supported, it has started being used to avoid the messy float/clearfix systems of older web frameworks. However, because it’s pretty young, there can be some bugs that occur in various browsers, or some use cases that may seem difficult to implement. The following two links are my go-to resource for Flexbox documentation: • https://github.com/philipwalton/flexbugs - the Flexbugs repository on Github is a good collection of known bugs, and possible workarounds. The issues section is very active, and users use it to discuss new bugs, or to document workarounds. • https://philipwalton.github.io/solved-by-flexbox/ - Written by the same user as Flexbugs, it is a very nice showcase website, indicating some ways to use Flexbox.
Bugs & solutions de Flexbox
Comme Flexbox est maintenant bien supporté, il a commencé à être utilisé pour éviter les systèmes pagailleux avec float/clearfix des vieux frameworks Web. Cependant, comme il est assez jeune, il peut y avoir des bugs qui arrivent sur certains navigateurs, ou des cas d'utilisation qui peuvent paraître difficiles à implémenter. les deux liens suivants sont mes ressources de prédilection pour la documentation sur Flexbox : • https://github.com/philipwalton/flexbugs - Le dépôt Flexbugs sur Github est une bonne compilation des des bugs connus et de leurs solutions possibles. La section des problèmes est très active et les utilisateurs s'en servent pour parler des nouvelles erreurs et pour documenter les solutions. • https://philipwalton.github.io/solved-by-flexbox/ - Écrit par le même utilisateur que Flexbugs, c'est un très intéressant site Web de cas concrets, montrant certains façons d'utiliser Flexbox.
Design (in general) These links are geared towards anyone who creates anything graphical. As colors can be a big factor in any design (and certain considerations must sometimes be taken into account), I frequently use the sites below to test possible color schemes before finalising a design. • http://www.colourlovers.com/, https://www.coleure.com/, http://www.colorion.co/ - These are three websites that offer color palette creation. If you’re just looking for various shades of a particular color, or more information about a particular shade, I would use the following links. • http://www.color-hex.com/, http://www.colorhexa.com/ - Both these sites aren’t intended to create a palette, but do offer vast amounts of information for any shade. Useful for converting to hex from rgb (or vice-versa), as well as for anyone who wishes to take color blindness into account.
Programming (in general) For anyone who is a programmer, and is looking for accessible documentation, or resources for learning, this is the section for you! • http://devdocs.io/ - A terrific web app offering documentation for a huge selection of languages. It offers an offline mode, where you can save your documentation for viewing, even if you don’t have web access. It is a terrific way to have documentation with you when on the go. • http://news.softpedia.com/news/ubuntu-touch-s-web-browser-to-improve-the-google-hangouts-experience-in-ota-11-504658.shtml - PacktPub is a publishing house for technical books. I highly recommend their newsletter for finding out about deals. However, for anyone looking for free resources, they also offer one free ebook per day. It’s a curated list (so no picking your own), but some months they’ll choose a theme (i.e. Python web development), and release books on that topic. All you require is an account (which is free). After that, you can view and read your books on practically any device I know of.
Cheatsheets These are links to single pages of documentation, intended to be an “at a glance” representation of the most frequently used commands. • https://github.com/wsargent/docker-cheat-sheet - A cheat sheet for Docker. If you can’t quite remember the exact name of the command, this may be a good spot to look. • http://docs.emmet.io/cheat-sheet/ - For anyone who uses Emmet to make their web programming life easier, this is the official cheat sheet.
Learning & Practicing These links are for online courses or tools to practice (and learn) programming languages. If a site offers only some free courses, it will be noted in the description. • https://www.codecademy.com/ - This site offers some free courses (sometimes just intro lessons, sometimes an entire path). They have a terrific in-browser IDE for working through the courses. Also, once or twice a year, they will open up all courses for 48 hours, giving you an opportunity to learn whatever you’d like. • http://exercism.io/ - A free website/CLI tool that offers a series of programming challenges in various languages. They supply the tests that your code must pass in order to “succeed” at the given task. It also offers peer review. A terrific way to get comfortable in a new language. I’m not sure if you could approach this without any knowledge of the language you want to learn, but even rudimentary experience should be sufficient to get started. • http://ureddit.com/ - University of Reddit. Offers a wide variety of courses. • https://www.coursebuffet.com/ - Course Buffet offers a catalog of free courses found across the web (offered by universities). Depending on what it is you want to learn, you may have some luck here. • https://www.skillshare.com/ - This site offers small bite-sized lessons on a variety of topics. Free users have a smaller catalog to choose from, and have no teacher support or offline access. • https://www.khanacademy.org/ - Khan Academy offers a wide variety of what I would class as “typical” subjects - math, computer sciences, and so forth. While not necessarily as focused as some courses on this list, it’s still a great resource depending on what you’d like to learn. It’s completely free, and the courses I’ve tried have been quite well done. • https://www.udacity.com - Udacity works in partnership with large companies (such as Google and Facebook) to offer what they call Nanodegrees. These Nanodegrees are paid courses. However, they do have free courses available as well (filter the catalog by Free Courses). These do not result in certificates or degrees. Overall, the website works well, and I have completed a few free courses created by Google. For a little more info on the Nanodegrees, jump to the next section.
Bonus Section This section contains a few paid course sites, and some free courses geared towards language learning. • http://www.memrise.com/ - (Language) This is a website geared towards learning a language by repetition. They have a large assortment of options. • https://www.duolingo.com/ - (Language) A free site for learning a limited selection of languages (things like Spanish, French, Italian, etc). I don’t know how frequently new languages are added (if at all), but it may be worth a browse. • https://www.udacity.com - (Courses) If you’re looking for a paid courses for specific skills, you may have success finding one here. They also offer a Nanodegree Plus option (job guarantee within 6 months, or 100% refund on the course costs). I’m not sure about the availability of those offerings internationally. • https://www.udemy.com - (Courses) A massive catalog of courses ranging from hacking to instrumental master classes. They currently offer some free courses as well. However, they frequently discount the paid courses down to $10-20. As of April this year, all courses have been reduced in price to sit between $20 and $50 (standard pricing), so I’m not sure if the discounts will be as frequent as previously.
I hope this list of resources will benefit at least a few readers. If you think I’ve missed something, feel free to let me know via email! I’m also happy to hear about any success stories (or issues) you’ve had with any of the items on this list. As always, I can be reached at lswest34+fcm@gmail.com.