Skip to content

Commit 604eebb

Browse files
author
José Valim
committed
New learning page
1 parent 3061ba2 commit 604eebb

11 files changed

+86
-88
lines changed

_includes/important-links.html

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -4,21 +4,16 @@ <h3 class="widget-title">Join the Community</h3>
44
<li><a class="spec" href="irc://irc.freenode.net/elixir-lang">#elixir-lang on freenode IRC</a></li>
55
<li><a class="spec" href="http://groups.google.com/group/elixir-lang-talk">elixir-talk mailing list (questions)</a></li>
66
<li><a class="spec" href="http://groups.google.com/group/elixir-lang-core">elixir-core mailing list (development)</a></li>
7-
<li><a class="spec" href="https://github.com/elixir-lang/elixir/issues">Issues tracker</a></li>
7+
<li><a class="spec" href="https://github.com/elixir-lang/elixir/issues">Issue tracker</a></li>
88
<li><a class="spec" href="http://twitter.com/elixirlang">@elixirlang on Twitter</a></li>
99
</ul>
1010
</div>
1111

1212
<div class="widget">
1313
<h3 class="widget-title">Important links</h3>
1414
<ul>
15+
<li><a class="spec" href="https://github.com/elixir-lang/elixir">Source Code</a></li>
1516
<li><a class="spec" href="https://github.com/elixir-lang/elixir/wiki">Wiki with events, resources and talks organized by the community</a></li>
1617
<li><a class="spec" href="/crash-course.html">Crash course for Erlang developers</a></li>
1718
</ul>
1819
</div>
19-
20-
{% include learning-resources.html %}
21-
22-
{% include code-editor-support.html %}
23-
24-
{% include sponsors.html %}

_includes/index-redirect.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
{% comment%}
1+
{% comment %}
22
Description:
33
This include file redirects you from the folder/ to folder/first_page_in_your_series.html
44

_includes/learning-resources.html

Lines changed: 0 additions & 15 deletions
This file was deleted.

_includes/top.html

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,11 +33,10 @@ <h1 id="site-title">
3333
<li class="menu-item home"><a class="spec" href="/">Home</a></li>
3434
<li class="menu-item install"><a class="spec" href="/install.html">Install</a></li>
3535
<li class="menu-item getting-started"><a class="spec" href="/getting-started/introduction.html">Getting Started</a></li>
36+
<li class="menu-item learning"><a class="spec" href="/learning.html">Learning</a></li>
3637
<li class="menu-item docs"><a class="spec" href="/docs.html">Docs</a></li>
3738
<li class="menu-item blog"><a class="spec" href="/blog/">Blog</a></li>
38-
<li class="menu-item source"><a class="spec" href="https://github.com/elixir-lang/elixir">Source</a></li>
3939
<li class="menu-item packages"><a class="spec" href="http://hex.pm/">Packages</a></li>
40-
4140
</ul>
4241
</div>
4342
</div>

_layouts/blog.html

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,8 @@
1111
</div>
1212
{% include categories-list.html %}
1313
{% include important-links.html %}
14+
{% include code-editor-support.html %}
15+
{% include sponsors.html %}
1416
</div>
1517

1618
{% include bottom.html %}

_layouts/default.html

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@
77
<div id="sidebar-primary" class="sidebar">
88
{% include search.html %}
99
{% include important-links.html %}
10+
{% include code-editor-support.html %}
11+
{% include sponsors.html %}
1012
</div>
1113

1214
{% include bottom.html %}

_layouts/getting-started.html

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,6 @@ <h3 class="widget-title">{{guide.title}}</h3>
1919
</div>
2020
{% endfor %}
2121

22-
{% include learning-resources.html %}
23-
{% include code-editor-support.html %}
2422
{% include sponsors.html %}
2523
</div>
2624

css/style.css

Lines changed: 18 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -176,7 +176,10 @@ h1, h2, h3, h4, h5, h6 {
176176
line-height: 1.3em;
177177
}
178178
h1 { font-size: 2.769230769230769em; } /* 36 / 13 = 2.769230769230769 */
179-
h2 { font-size: 1.846153846153846em; } /* 24 / 13 = 1.846153846153846 */
179+
h2 {
180+
font-size: 1.846153846153846em; /* 24 / 13 = 1.846153846153846 */
181+
margin-top: 35px;
182+
}
180183
h3 { font-size: 1.538461538461538em; } /* 20 / 13 = 1.538461538461538 */
181184
h4 { font-size: 1.384615384615385em; } /* 18 / 13 = 1.384615384615385 */
182185
h5 {
@@ -355,8 +358,8 @@ blockquote {
355358
padding: 5px 0 5px 20px;
356359
}
357360

358-
blockquote pre:last-child {
359-
margin-bottom: 0;
361+
blockquote p:last-child, blockquote pre:last-child {
362+
margin-bottom: 5px;
360363
}
361364

362365
/* Code
@@ -498,7 +501,7 @@ body.install div.menu li.install a,
498501
body.getting-started div.menu li.getting-started a,
499502
body.blog div.menu li.blog a,
500503
body.docs div.menu li.docs a,
501-
body.source div.menu li.source a {
504+
body.learning div.menu li.learning a {
502505
color: #aaa;
503506
}
504507

@@ -671,32 +674,6 @@ body.source div.menu li.source a {
671674
clear: left;
672675
}
673676

674-
/* Page links for multi-paged posts <!--nextpage-->
675-
-------------------------------------------------------------- */
676-
.page-links {
677-
clear: both;
678-
font-size: 0.8461538461538462em;
679-
word-spacing: 2px;
680-
line-height: 1em;
681-
color: #222;
682-
}
683-
.entry-summary .page-links {
684-
clear: none;
685-
font-size: 0.8461538461538462em;
686-
line-height: 1em;
687-
color: #aaa;
688-
}
689-
.page-links a, .page-links a:visited {
690-
display: inline-block;
691-
color: #555;
692-
background: #e9e9e9;
693-
padding: 3px 6px;
694-
}
695-
.page-links a:hover {
696-
color: #fff;
697-
background: #555;
698-
}
699-
700677
/* Archive/search pagination and comment pagination
701678
-------------------------------------------------------------- */
702679
.comment-navigation { margin-bottom: 1.692307em; }
@@ -737,11 +714,8 @@ li.image {
737714
list-style: none;
738715
margin-bottom: 10px;
739716
}
717+
740718
.widget li.image img { border-width: 0; }
741-
.widget li.image img.border {
742-
border-width: 1px;
743-
padding: 0;
744-
}
745719

746720
/* Widget titles
747721
-------------------------------------------------------------- */
@@ -786,19 +760,6 @@ li.image {
786760
text-decoration: underline;
787761
}
788762

789-
#social {
790-
float: right;
791-
margin-top: -15px;
792-
}
793-
#social ul {
794-
list-style: none;
795-
margin: 0;
796-
}
797-
#social li {
798-
float: right;
799-
margin-left: -10px;
800-
}
801-
802763
#copyright {
803764
text-align: center;
804765
font-size: 12px;
@@ -842,12 +803,17 @@ li.image {
842803
}
843804
}
844805

806+
/* Learning */
807+
body.learning a.cover {
808+
float: left;
809+
padding: 10px 20px 10px 0px;
810+
}
845811

846-
/* Aditional
847-
----------------------------------------------------- */
848-
/* table of contents */
849-
/* Jekyll Table of Contents
850-
----------------------------------------------------- */
812+
body.learning h4.resource {
813+
padding-top: 13px;
814+
}
815+
816+
/* Jekyll Table of Contents */
851817
ol.jekyll-toc {
852818
margin: 0.3125em 0 0 3.125em;
853819
}

getting-started/where-to-go-next.markdown

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -28,22 +28,18 @@ Elixir is an extensible and very customizable programming language thanks to its
2828

2929
## Community and other resources
3030

31-
On the sidebar, you can find links to Elixir books and screencasts. There are plenty of Elixir resources out there, like conference talks, open source projects, and other learning material produced by the community.
31+
We have a [Learning](/learning.html) section that explores books, screencasts and other resources for learning Elixir and explore the ecossystem. There are also plenty of Elixir resources out there, like conference talks, open source projects, and other learning material produced by the community.
3232

3333
Remember that in case of any difficulties, you can always visit the **#elixir-lang** channel on **irc.freenode.net** or send a message to the [mailing list](http://groups.google.com/group/elixir-lang-talk). You can be sure that there will be someone willing to help. To keep posted on the latest news and announcements, follow the [blog](/blog/) and follow the language development on the [elixir-core mailing list](http://groups.google.com/group/elixir-lang-core).
3434

3535
Don't forget that you can also check the [source code of Elixir itself](https://github.com/elixir-lang/elixir), which is mostly written in Elixir (mainly the `lib` directory), or [explore Elixir's documentation](/docs.html).
3636

3737
## A byte of Erlang
3838

39-
As the main page of this site puts it:
40-
41-
> Elixir is a programming language built on top of the Erlang <abbr title="Virtual Machine">VM</abbr>.
42-
43-
Sooner or later, an Elixir developer will want to interface with existing Erlang libraries. Here's a list of online resources that cover Erlang's fundamentals and its more advanced features:
39+
Elixir runs on the Erlang Virtual Machine and, sooner or later, an Elixir developer will want to interface with existing Erlang libraries. Here's a list of online resources that cover Erlang's fundamentals and its more advanced features:
4440

4541
* This [Erlang Syntax: A Crash Course](/crash-course.html) provides a concise intro to Erlang's syntax. Each code snippet is accompanied by equivalent code in Elixir. This is an opportunity for you to not only get some exposure to Erlang's syntax but also review some of the things you have learned in this guide.
4642

4743
* Erlang's official website has a short [tutorial](http://www.erlang.org/course/concurrent_programming.html) with pictures that briefly describe Erlang's primitives for concurrent programming.
4844

49-
* [Learn You Some Erlang for Great Good!](http://learnyousomeerlang.com/) is an excellent introduction to Erlang, its design principles, standard library, best practices and much more. If you are serious about Elixir, you'll want to get a solid understanding of Erlang principles. Once you have read through the crash course mentioned above, you'll be able to safely skip the first couple of chapters in the book that mostly deal with the syntax. When you reach [The Hitchhiker's Guide to Concurrency](http://learnyousomeerlang.com/the-hitchhikers-guide-to-concurrency) chapter, that's where the real fun starts.
45+
* [Learn You Some Erlang for Great Good!](http://learnyousomeerlang.com/) is an excellent introduction to Erlang, its design principles, standard library, best practices and much more. Once you have read through the crash course mentioned above, you'll be able to safely skip the first couple of chapters in the book that mostly deal with the syntax. When you reach [The Hitchhiker's Guide to Concurrency](http://learnyousomeerlang.com/the-hitchhikers-guide-to-concurrency) chapter, that's where the real fun starts.

install.markdown

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,12 @@ layout: default
66

77
# {{ page.title }}
88

9+
{% include toc.html %}
10+
911
The quickest way to install Elixir is through a distribution or using one of the available installers. If not available, then we recommend the precompiled packages or compiling from source.
1012

1113
Note Elixir requires Erlang 17.0 or later. Many of the instructions below will automatically install Erlang for you. In case they do not, read the "Installing Erlang" section below.
1214

13-
{% include toc.html %}
14-
1515
## Distributions
1616

1717
Choose your operating system and tool.

learning.markdown

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
---
2+
title: "Learning resources"
3+
section: learning
4+
layout: default
5+
---
6+
7+
# {{ page.title }}
8+
9+
{% include toc.html %}
10+
11+
Our website provides a [Getting Started](/getting-started/introduction.html) guide to learn more about Elixir's foundation and explore how to build projects with [Mix and OTP](getting-started/mix-otp/introduction-to-mix.html).
12+
13+
The Elixir Community has also produced plenty of resources to explore Elixir from different backgrounds and other perspectives. We are sure you will find a resource that follows your pace and interests.
14+
15+
## Learn Elixir
16+
17+
<h4 class="resource">Programming Elixir</h4>
18+
19+
<a class="cover" href="https://pragprog.com/book/elixir/programming-elixir" title="Programming Elixir: Functional |&gt; Concurrent |&gt; Pragmatic |&gt; Fun – by Dave Thomas"><img src="http://imagery.pragprog.com/products/361/elixir_xlargecover.jpg?1368724397" alt="Programming Elixir cover" width="190" height="228" /></a>
20+
21+
You want to explore functional programming, but are put off by the academic feel (tell me about monads just one more time). You know you need concurrent applications, but also know these are almost impossible to get right. Meet Elixir, a functional, concurrent language built on the rock-solid Erlang VM.
22+
23+
Elixir’s pragmatic syntax and built-in support for metaprogramming will make you productive and keep you interested for the long haul. And Programming Elixir is the introduction to Elixir for experienced programmers, written by the same person that wrote the first English books on Ruby and then Rails. Starting with pattern matching, it takes you all the way through concurrency, agents, supervisors, and ends with OTP applications. Along the way, you'll learn tools, techniques, and good practices for creating tomorrow's applications.
24+
25+
<div class="clear"></div>
26+
27+
<h4 class="resource">Elixir in Action</h4>
28+
29+
<a class="cover" href="http://manning.com/juric/" title="Elixir in Action – by Saša Jurić"><img src="http://manning.com/juric/juric_cover150.jpg" alt="Elixir in Action cover" width="190" height="238" /></a>
30+
31+
Elixir in Action is a tutorial book that aims to bring developers new to Elixir and Erlang to the point where they can develop complex systems on their own. No knowledge about Elixir, Erlang, or functional programming is required, but it is assumed that a reader has a few years of production experience using mainstream OO languages, for example C#, Java, Python, or Ruby.
32+
33+
The book starts with a basic introduction to the Elixir language and functional programming idioms. The central part of the book deals with Erlang VM and OTP, discussing topics such as concurrent programming, fault-tolerance, and distributed systems. Finally, you'll learn how to package your code into components, create a standalone deployable release, and troubleshoot the running system. The theory is demonstrated through a simplistic example that is gradually expanded throughout the book into a fully standalone releasable system.
34+
35+
<div class="clear"></div>
36+
37+
## Screencasts
38+
39+
<h4 class="resource">Elixir Sips</h4>
40+
41+
<a class="cover" href="http://elixirsips.com" title="Elixir Sips: Learn Elixir with Two Short Videos Each Week – with Josh Adams"><img src="http://elixirsips.com/images/ElixirLangAd2_190x160.png" alt="ElixirSips cover" width="190" height="160" /></a>
42+
43+
<p>Description coming...</p>
44+
45+
<div class="clear"></div>
46+
47+
## In-depth Resources
48+
49+
<h4 class="resource">Metaprogramming Elixir</h4>
50+
51+
<a class="cover" href="https://pragprog.com/book/cmelixir/metaprogramming-elixir" title="Metaprogramming Elixir: Write Less Code, Get More Done - by Chris Mccord"><img src="https://imagery.pragprog.com/products/430/cmelixir_xlargecover.jpg?1415371472" alt="ElixirSips cover" width="190" height="228" /></a>
52+
53+
<p>Description coming...</p>
54+
55+
<div class="clear"></div>

0 commit comments

Comments
 (0)