<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
  <title>learning on Jon Calder</title>
  <link>https://www.joncalder.co.za/tags/learning/</link>
  <description>Recent content in learning on Jon Calder</description>
  <generator>Hugo -- gohugo.io</generator>
<lastBuildDate>Wed, 26 Jul 2017 00:00:00 +0000</lastBuildDate>

<atom:link href="https://www.joncalder.co.za/tags/learning/index.xml" rel="self" type="application/rss+xml" />


<item>
  <title>The spark of statistics</title>
  <link>https://www.joncalder.co.za/2017-07-26-the-spark-of-statistics/</link>
  <pubDate>Wed, 26 Jul 2017 00:00:00 +0000</pubDate>
  
<guid>https://www.joncalder.co.za/2017-07-26-the-spark-of-statistics/</guid>
  <description>&lt;p&gt;I&amp;rsquo;ve enjoyed maths for pretty much as long as I can remember. I&amp;rsquo;m aware that it is rare to make such a statement. Probably straight up weird to some. But that just shows how much I have to be grateful for. I am indebted to my parents, extended family and friends and a number of great teachers over the years who made sacrifices in order to give me solid learning opportunities and a supportive environment.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://www.joncalder.co.za/img/small-imgs/iris_sepalwidth.png&#34; alt=&#34;Density Plot&#34; title=&#34;Density Plot&#34;&gt;&lt;/p&gt;
&lt;p&gt;I mention my affinity for maths because it is pretty hard to enjoy statistics without first enjoying maths. A few weeks ago I watched a cool Ted Talk entitled &amp;ldquo;Why you should love statistics&amp;rdquo;. It got me thinking about how I came to love statistics, and for me it most definitely began with a love for maths.&lt;/p&gt;
&lt;p&gt;I tutored a lot of undergraduate statistics during my university days and most of the students who struggled had little appreciation for statistics because they were constantly caught up in the underlying mathematical mechanics. My recollection is that often their maths deficiency was not due to a lack of ability, but could instead be attributed to a foundational gap of some sort. Whether it was moving schools, a change of teacher, prolonged sickness or some other catalyst for falling behind, I was left with the impression that somewhere along the way seeds of doubt had been sown for these students, and proved a force to be reckoned with further on down the road.&lt;/p&gt;
&lt;p&gt;Alan Smith begins his Ted Talk by highlighting the low levels of numeracy in a number of &lt;a href=&#34;http://www.oecd.org/&#34;&gt;OECD countries&lt;/a&gt; but is quick to warn us against what he considers a false dichotomy: the idea that some of us can &amp;ldquo;do numbers&amp;rdquo; and some of us can&amp;rsquo;t. I&amp;rsquo;m inclined to agree with him. Sure, some aspects of numeracy and mathematical ability are probably innate, but I think that as with many other skillsets, the driving factors for success are (1) a conducive learning environment; (2) a good support structure; (3) a positive mindset; and (4) practice. The problem is, boxes (1) and (2) aren&amp;rsquo;t ticked for many young students (especially in less developed countries like mine which are plagued by poverty and related hardships), and even if they are, it&amp;rsquo;s hard to have a positive mindset (3) and to invest in practice (4) if you&amp;rsquo;re given the impression that you simply &lt;em&gt;can&amp;rsquo;t do numbers&lt;/em&gt; after getting off to a rocky start, or after hitting a few speedbumps along the way.&lt;/p&gt;
&lt;p&gt;Two recent cases came to mind which re-inforce this idea for me. The first was a powerful personal story shared as part of a message at church. Given that I&amp;rsquo;m referencing the story outside of the context in which it was originally shared, I&amp;rsquo;ve paraphrased the story below and avoided any direct reference to the speaker himself.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;In Standard 5 I discovered that I was stupid. In the process of switching schools, I had moved from Standard 3 straight to Standard 5. So in addition to the language barrier I now had to overcome at the new school, I also had to catch up on Standard 4. Catching up on the maths content I had missed proved particularly difficult. I recall fractions were a problem. My teacher said to me: &amp;ldquo;As soon as you have an opportunity to choose subjects, you should choose history, because you will never be able to do maths.&amp;rdquo; At the end of that year I got 32% for maths. I remember thinking, where did I get all these marks?&lt;/p&gt;
&lt;p&gt;After getting to Standard 6 the following year, I found out that I could only change subjects in Standard 7. So that meant I had to endure another year of maths. I had a new teacher and after our first maths test, she called me in (no surprise there). She said: &amp;ldquo;I&amp;rsquo;m not gonna mark your paper because this is not who you are. Not only do you have the potential to get good grades, but you are actually the best maths student we have in this school.&amp;rdquo; What a strange thing to say&amp;hellip;   &amp;hellip;she didn&amp;rsquo;t know me at all. At the time I thought she was really, really crazy (and I think she was a little bit). In the next test, I got 62%. I hadn&amp;rsquo;t studied harder. I didn&amp;rsquo;t change anything. And then she called me in again and said: &amp;ldquo;This is not who you are. You are the best maths student in this school.&amp;rdquo;&lt;/p&gt;
&lt;p&gt;The following test, I &lt;strong&gt;became that&lt;/strong&gt;.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;img src=&#34;https://www.joncalder.co.za/img/small-imgs/believe_in_yourself.jpg&#34; alt=&#34;Believe In Yourself&#34; title=&#34;Believe In Yourself&#34;&gt;&lt;/p&gt;
&lt;p&gt;The second example came in the form of a &lt;a href=&#34;http://www.news24.com/SouthAfrica/Local/Peoples-Post/maths-star-goes-international-20170612&#34;&gt;local news article&lt;/a&gt; about Tim Schlesinger, who was recently selected by the South African Mathematics Foundation to represent the country at the International Mathematics Olympiad and Pan African Mathematics Olympiad competitions overseas. The extract below is taken directly from the article:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;He also gave words of advice to other learners who would like to do better in maths, saying they should focus on enjoying maths.&lt;/p&gt;
&lt;p&gt;“From there, everything else follows easily. Many think that you are either born able to do maths or not, but you really can learn both theory and problem solving. It has been encouraging to see how much time and effort others are willing to invest in young mathematicians.”&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;So having (hopefully) convinced you that many people who think they can&amp;rsquo;t do maths probably could if they would just stick it out long enough to overcome their doubts - let&amp;rsquo;s now get back to my story!&lt;/p&gt;
&lt;p&gt;One of my earliest recollections of enjoying maths was during grade 3, when we were first introduced to &amp;ldquo;word problems&amp;rdquo;. The irony of that statement is not lost on me, because by matric I had discovered that English would actually be my most challenging subject at school. Spelling and grammar were fine. Sure, there often seemed to be more exceptions than there were rules (especially in the case of English), but at least there were &lt;strong&gt;SOME&lt;/strong&gt; rules to follow. However when it came to the required &amp;lsquo;creative&amp;rsquo; interpretations of poetry and literature I often found myself at a loss.&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;http://explosm.net/comics/1695/&#34;&gt;&lt;img src=&#34;https://www.joncalder.co.za/img/small-imgs/drinking_problem.png&#34; alt=&#34;Cyanide and Happiness&#34; title=&#34;Cyanide and Happiness&#34;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Anyway, word problems introduced me to the elegance of thinking about and communicating a concept or problem mathematically, by contrast to the wordy version which often seemed (to me at least) a lot more complex. Happily, this enjoyment of maths continued for me right through both primary and secondary school, and my family still laughs at the recollection that sometimes when I got home from school in the afternoons my mom had to ask me to go and play outside with my younger sister &lt;strong&gt;before&lt;/strong&gt; diving into my maths homework.&lt;/p&gt;
&lt;p&gt;Admittedly by my 2nd year of university I thought some of the &amp;lsquo;pure math&amp;rsquo; started getting a little weird though. Eventually I grew to appreciate the more abstract notions of mathematical rigor that were introduced to us in our Real Analysis module as we looked at the construction of the real number system, limits and convergence, continuity etc but it did require a more concerted effort. It was around this time that statistics started to take precedence for me.&lt;/p&gt;
&lt;p&gt;I recall our first encounter with double integrals surfacing early on in a 2nd year statistics course, long before it was actually introduced in the concurrent and pre-requisite maths (calculus) course. We were given a quick run through and just had to roll with it until our maths syllabus caught up. Once these theory gaps had been filled in we had a much better appreciation of the applied nature of what we were learning in the statistical domain. This was a picture of things to come, since as I moved into the latter part of my degree and transitioned into post-grad, maths became subservient to my pursuit of statistics.&lt;/p&gt;
&lt;p&gt;The interesting thing though is that I barely even knew statistics existed during most of my time at school. So how did I come to be interested in statistics at university? I believe a key catalyst was something which took place back in my grade 11 biology class. While covering the human reproductive system, we began a brief foray into the field of genetics, looking at chromosomes, DNA and RNA, proteins and all that life-shaping magic. Somewhere in the midst of all that, one day my teacher entered into a discussion about red-green colour blindness, highlighting that it is much more common in men. And so we were introduced to the concept of X-linked recessive inheritance.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://www.joncalder.co.za/img/small-imgs/colorblind.jpg&#34; alt=&#34;colorblind pie chart&#34; title=&#34;colorblind pie chart&#34;&gt;&lt;/p&gt;
&lt;p&gt;I&amp;rsquo;m pretty sure he simplified things significantly in order to shield us from some of the complexities involved, so I will do the same here (with apologies to any geneticists who might be reading this). Here are the key pieces of information:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;the family of mutations that are commonly responsible for certain types of (red-green) color blindness can only occur on the X chromosome&lt;/li&gt;
&lt;li&gt;men have one X and one Y chromosome whereas women have two X chromosomes&lt;/li&gt;
&lt;li&gt;in women, the mutation needs to be present on both X chromosomes to cause color blindness, so some women can be &amp;lsquo;carriers&amp;rsquo; while remaining unaffected&lt;/li&gt;
&lt;li&gt;since men have a single X chromosome, they will be color blind if this chromosome has the mutation&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The resulting inheritance pattern, known as X-linked recessive inheritance, is nicely illustrated in the below diagram.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://www.joncalder.co.za/img/small-imgs/x_linked_recessive.png&#34; alt=&#34;X-linked recessive inheritance&#34; title=&#34;X-linked recessive inheritance&#34;&gt;&lt;/p&gt;
&lt;p&gt;(diagram sourced from &lt;a href=&#34;https://en.wikipedia.org/wiki/X-linked_recessive_inheritance&#34;&gt;Wikipedia&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;The diagram shows that a woman who carries an X-linked recessive disorder has a 50 percent chance (with each pregnancy) of having a son who is affected and a 50 percent chance of having a daughter who carries one copy of the mutated gene. In the interest of being more thorough/clear: there is an equal 25 percent chance of having an unaffected boy, affected boy, non-carrier girl, or carrier girl.&lt;/p&gt;
&lt;p&gt;Of course there are other scenarios and combinations to consider too; for example the sons of a man with an X-linked recessive disorder will not be affected (since boys always receive the Y chromosome of their father), and his daughters will carry one copy of the mutated gene (since girls always receive the X chromosome of their father). Similarly, one can enumerate the possibilities for offspring of an affected mother and unaffected father, affected father and carrier mother, or affected father and affected mother. Things then get a little more interesting when starting to look at the propogation of such a disorder across a few generations with different combinations of these scenarios in effect in each generation.&lt;/p&gt;
&lt;p&gt;And it was some combination of the above mentioned scenarios that my teacher threw out as a suggestion for further investigation (homework) that day which sparked my first meaningful exploration into the world of independent and conditional events, and the law of total probability. I&amp;rsquo;m pretty sure I didn&amp;rsquo;t know anything about conditional or marginal probabilities at the time, but as I sat down that evening to work through a few scenarios I recall that it came quite naturally to me to work out the underlying probabilities by stringing together the basic principles.&lt;/p&gt;
&lt;p&gt;The next day I returned to school armed with a half-page of scribbled workings and the moment the question was asked my arm went up. As it turned out, no-one else had really taken the teachers suggestion from the previous day seriously and my raised hand was not met with any competition. So I proudly described the results of my probabilistic investigation to the teacher and the rest of class. He was suitably impressed and immediately affirmed my aptitude and efforts, whilst also encouraging me to pursue statistics further after leaving school. In hindsight it&amp;rsquo;s clear to me that this was good advice.&lt;/p&gt;
&lt;p&gt;So Mr Moore, wherever you are now, thank you for all the things you taught me, and thank you for your words of affirmation which have stayed with me ever since that day in biology class.&lt;/p&gt;
&lt;p&gt;Another thing Alan Smith highlights in his talk which I was not previously aware of is the etymology of the word &lt;em&gt;statistics&lt;/em&gt;. It is &amp;lsquo;&lt;em&gt;the science of dealing with data about the condition of a state or community&lt;/em&gt;&amp;rsquo;. He describes it simply as &amp;lsquo;&lt;strong&gt;the science of us&lt;/strong&gt;&amp;rsquo;. So to me there is something quite poetic in the way my introduction to statistics came via biology and genetics - a different variant of &lt;em&gt;the science of us&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;I love statistics, so obviously I&amp;rsquo;m biased, but I think the Ted Talk (shown below) is well worth a watch, whatever your perspective on the matter. I hope that it encourages you to become more fascinated by numbers.&lt;/p&gt;
&lt;iframe width=&#34;560&#34; height=&#34;315&#34; src=&#34;https://www.youtube.com/embed/ogeGJS0GEF4&#34; frameborder=&#34;0&#34; allowfullscreen&gt;&lt;/iframe&gt;
</description>
  </item>
  
<item>
  <title>R track on exercism.io</title>
  <link>https://www.joncalder.co.za/2017-04-05-r-track-on-exercism.io/</link>
  <pubDate>Wed, 05 Apr 2017 00:00:00 +0000</pubDate>
  
<guid>https://www.joncalder.co.za/2017-04-05-r-track-on-exercism.io/</guid>
  <description>&lt;p&gt;&lt;a href=&#34;https://www.joncalder.co.za/2017-01-09-why-swirl/&#34;&gt;As I&amp;rsquo;ve said before&lt;/a&gt;, when it comes to programming I&amp;rsquo;m a firm believer in the &amp;ldquo;learn by doing&amp;rdquo; approach. &lt;a href=&#34;http://exercism.io/&#34;&gt;&lt;code&gt;exercism.io&lt;/code&gt;&lt;/a&gt; is a project which exemplifies this.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://www.joncalder.co.za/img/small-imgs/exercism_logo.png#floatright&#34; alt=&#34;exercism logo&#34; title=&#34;exercism logo&#34;&gt;&lt;/p&gt;
&lt;p&gt;I came across &lt;a href=&#34;http://exercism.io/&#34;&gt;&lt;code&gt;exercism.io&lt;/code&gt;&lt;/a&gt; earlier this year while exploring GitHub looking for an open source project to contribute to. The premise is fairly simple:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;pick a language that you&amp;rsquo;d like to learn or improve on&lt;/li&gt;
&lt;li&gt;fetch an exercise via the Command Line Interface (CLI)&lt;/li&gt;
&lt;li&gt;code up and submit a solution for the exercise&lt;/li&gt;
&lt;li&gt;return to the site to get feedback on your solution and/or to compare it to the solutions others have come up with&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The problems are very simple to begin with, (usually starting out with the traditional &amp;ldquo;Hello, World!&amp;quot;), progressing to more difficult problems further on. It&amp;rsquo;s aimed at both newbies and experienced developers, with the philosophy being that for newer programmers the exercises are achievable but &amp;ldquo;with enough complexity to uncover bite-sized knowledge gaps&amp;rdquo;, whereas for more experienced developers, the problems &amp;ldquo;provide a balance of constraints and freedom and encourage you to explore trade-offs and best-practices&amp;rdquo;.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://www.joncalder.co.za/img/small-imgs/lolcat_code_reviews.jpg#floatleft&#34; alt=&#34;lolcat code reviews&#34; title=&#34;lolcat code reviews&#34;&gt;&lt;/p&gt;
&lt;p&gt;More experienced developers are also encouraged to get involved reviewing the solutions of others and/or to contribute to the project which is all completely open source, whether it is the website itself, API&amp;rsquo;s, the CLI, documentation or track content. The site is also well suited to those with experience in one or more languages who are wanting to ramp up in a new language, or to get a sense of the how the idiomatic approach to a problem might differ from language to language.&lt;/p&gt;
&lt;p&gt;There are currently 35 active language tracks, with another 20+ language tracks planned or upcoming (essentially in an incubation stage). One of those which is hopefully soon-to-be-launched is the &lt;a href=&#34;http://exercism.io/languages/r/launch&#34;&gt;R language track&lt;/a&gt;, which I&amp;rsquo;ve been contributing to over the past two months and am pretty excited about.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://www.joncalder.co.za/img/small-imgs/exercism_R_logo.png#floatright&#34; alt=&#34;exercism R logo&#34; title=&#34;exercism R logo&#34;&gt;&lt;/p&gt;
&lt;p&gt;If you&amp;rsquo;re interested, there are a number of ways you can get involved:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Firstly, give the &lt;a href=&#34;http://exercism.io/languages/r/launch&#34;&gt;R language track&lt;/a&gt; a try! (you&amp;rsquo;ll need to login on &lt;code&gt;exercism.io&lt;/code&gt; using your GitHub account)&lt;/li&gt;
&lt;li&gt;Once you&amp;rsquo;ve submitted a solution to a problem, you&amp;rsquo;ll be able to see other peoples submissions and are encouraged to comment on these and get discussions going around style and best practice, pros and cons of different approaches etc.&lt;/li&gt;
&lt;li&gt;If you encounter any problems along the way (e.g. setup/install instructions, fetching or submitting exercises, running tests etc) then raise it via the &lt;a href=&#34;https://gitter.im/exercism/support&#34;&gt;online chat support&lt;/a&gt; in order to get help and/or bring it to someone&amp;rsquo;s attention if something needs to be fixed&lt;/li&gt;
&lt;li&gt;With regard to the above, if you encounter an issue which applies specifically to the R track, then please open an issue on the &lt;a href=&#34;https://github.com/exercism/xr/issues&#34;&gt;R track repo&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Consider becoming a mentor for the R track (if you&amp;rsquo;re interested, please reach out to me on &lt;a href=&#34;https://twitter.com/jonmcalder&#34;&gt;Twitter&lt;/a&gt; or via my &lt;a href=&#34;https://www.joncalder.co.za/contact/&#34;&gt;contact page&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Checkout the list of &lt;a href=&#34;http://exercism.io/languages/r/todo&#34;&gt;unimplemented exercises&lt;/a&gt; for the R track and follow the instructions there to submit a pull request&lt;/li&gt;
&lt;li&gt;Lastly, look through &lt;code&gt;exercism.io&#39;s&lt;/code&gt; &lt;a href=&#34;https://github.com/exercism/exercism.io/blob/master/CONTRIBUTING.md&#34;&gt;contributing doc&lt;/a&gt;, which outlines a number of other ways you can get involved (either with a specific language track, or across other areas of the project as well)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Based on my involvement so far the &lt;code&gt;exercism.io&lt;/code&gt; community seems very friendly and open, and I think its a great open source initiative, so there&amp;rsquo;s no reason why the &lt;code&gt;#rstats&lt;/code&gt; community shouldn&amp;rsquo;t be well represented there.&lt;/p&gt;
&lt;p&gt;On that note, a big thank you to exercism&amp;rsquo;s contributors, and especially to &lt;a href=&#34;http://jonboiser.com/&#34;&gt;Jonathan Boiser&lt;/a&gt; and &lt;a href=&#34;http://www.kytrinyx.com/&#34;&gt;Katrina Owen&lt;/a&gt; for being friendly, helpful and supportive of my involvement in the project thus far. You guys are excellent role models for the greater open source community.&lt;/p&gt;
</description>
  </item>
  
<item>
  <title>Why swirl?</title>
  <link>https://www.joncalder.co.za/2017-01-09-why-swirl/</link>
  <pubDate>Mon, 09 Jan 2017 00:00:00 +0000</pubDate>
  
<guid>https://www.joncalder.co.za/2017-01-09-why-swirl/</guid>
  <description>&lt;p&gt;&lt;img src=&#34;https://www.joncalder.co.za/img/small-imgs/swirl-logo.PNG&#34; alt=&#34;swirl logo&#34; title=&#34;swirl logo&#34;&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;swirl is a software package for the R programming language that turns the R console into an interactive learning environment. Users receive immediate feedback as they are guided through self-paced lessons in data science and R programming.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;I think I first came across &lt;a href=&#34;http://swirlstats.com&#34;&gt;swirl&lt;/a&gt; in mid-2014, while working through the early stages of the
&lt;a href=&#34;https://www.coursera.org/specializations/jhu-data-science&#34;&gt;Data Science Specialization&lt;/a&gt; on Coursera, put together by Johns Hopkins University professors &lt;a href=&#34;https://twitter.com/rdpeng&#34;&gt;Roger Peng&lt;/a&gt;, &lt;a href=&#34;https://twitter.com/bcaffo&#34;&gt;Brian Caffo&lt;/a&gt; and &lt;a href=&#34;https://twitter.com/jtleek&#34;&gt;Jeff Leek&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The courses in this specialization make extensive use of swirl to introduce and explore various topics in the form of interactive programming assignments in R (e.g. &lt;a href=&#34;http://swirlstats.com/scn/rprog.html&#34;&gt;R programming&lt;/a&gt;). This is probably largely due to the fact that these three professors were involved in the early development of swirl with it&amp;rsquo;s creator &lt;a href=&#34;http://nickcarchedi.com/&#34;&gt;Nick Carchedi&lt;/a&gt; who is a graduate of Johns Hopkins Biostatistics. For those who may be new to R or data science - these Coursera courses are an excellent resource which I can highly recommend.&lt;/p&gt;
&lt;p&gt;Of course there are many, many great resources for getting started (and later improving) with R programming: try the &lt;a href=&#34;https://www.rstudio.com/online-learning/&#34;&gt;online learning suggestions from RStudio&lt;/a&gt;, or take a look through some of these &lt;a href=&#34;https://www.quora.com/What-are-some-good-resources-for-learning-R-1&#34;&gt;Quora answers&lt;/a&gt; and you will find a wealth of R resources: online courses, books, tutorials and more. If that&amp;rsquo;s not enough for you - Google is your friend. There is so much out there!&lt;/p&gt;
&lt;p&gt;I&amp;rsquo;d like to focus on swirl in this post however, since I feel it doesn&amp;rsquo;t really get as much attention as it should. There are three key ways in which I think swirl has got it right as a learning platform:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;it directly facilitates learning by doing&lt;/li&gt;
&lt;li&gt;it runs from within R&lt;/li&gt;
&lt;li&gt;it is free and open source&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;learn-by-doing&#34;&gt;Learn by Doing&lt;/h3&gt;
&lt;p&gt;First is the &amp;ldquo;learn by doing&amp;rdquo; component, which is almost as crucial to learning to program as it is to learning to ride a bike, or to drive a car.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://www.joncalder.co.za/img/small-imgs/code-cat.jpg#floatright&#34; alt=&#34;code cat&#34; title=&#34;code cat&#34;&gt;&lt;/p&gt;
&lt;p&gt;Sure, programming is mostly cognitive, but in my experience you only begin to internalize and understand concepts, syntax etc properly when you start to apply them. The primary learning you do when learning to ride a bike or drive a car happens when getting onto a bike or into a car for the first time and (usually) having someone walk you through the interface, controls etc as you experience them for yourself.&lt;/p&gt;
&lt;p&gt;The need to learn by doing might seem obvious, but if you stop and think about it for a moment, you might find that given the wealth of great R programming books, videos, courses etc its entirely plausible that you could begin your learning path there and after being pulled in different directions end up spending very little (or no) time in R. A few days ago I was chatting to one of my cousins who has been learning R on and off for a while now and when I asked him how it was going he said he thinks his learning process so far has lacked sufficient &amp;ldquo;hands on&amp;rdquo; practice with R.&lt;/p&gt;
&lt;p&gt;swirl is great because it forces you to learn by doing, whether that means copying code/syntax from an instruction, interrogating R&amp;rsquo;s help documentation in order to work out how to make use of a particular function, or experimenting with different options by trial and error.&lt;/p&gt;
&lt;h3 id=&#34;learn-r-in-r&#34;&gt;Learn R, in R&lt;/h3&gt;
&lt;p&gt;Second is the &amp;ldquo;learn R, in R&amp;rdquo; component, which is what makes swirl pretty unique. There are a few other learning platforms which embed or reproduce the R console within their own web environments to produce a similar outcome, but at the end of the day, in some or other (possibly quite small) respects none can be equivalent to the reality of working in a local R environment on your own computer, whether that be RStudio (recommended!), some other IDE of your choosing, or even just running R from the terminal.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://www.joncalder.co.za/img/small-imgs/swirl-example.PNG&#34; alt=&#34;swirl in action&#34; title=&#34;swirl in action&#34;&gt;&lt;/p&gt;
&lt;p&gt;Since swirl runs within R itself, when you learn with swirl, you can work with the exact same local R environment you will later use to program in R. By way of a poor analogy, this is somewhat like the difference between taking your driving lessons in someone elses car and taking them in the car that you plan to use once you have obtained your license. If you have the option of the latter, there are certainly benefits to doing so.&lt;/p&gt;
&lt;p&gt;At the same time I do acknowledge that there can also be some downsides to this when considered from certain perspectives (e.g. the swirl approach of embedding the learning environment within R is not as flexible as the reverse and does constrain the learning environment to some extent). However as mentioned above I think what swirl has to offer is unique in this respect and it is worth highlighting that the advantages are significant.&lt;/p&gt;
&lt;p&gt;I am certainly not averse to other R learning platforms and realize that some have other advantages over swirl. For example, it is worth noting that the creator of swirl is now working at &lt;a href=&#34;https://www.datacamp.com/&#34;&gt;DataCamp&lt;/a&gt;, which is an excellent learning platform that offers a host of courses in both Python and R, some of which in fact still make use of swirl.&lt;/p&gt;
&lt;h3 id=&#34;free-and-open-source&#34;&gt;Free and Open Source&lt;/h3&gt;
&lt;p&gt;Third is the fact that swirl is completely free and open source. This means that students, instructors and other R developers can dig into both swirl itself and swirl lesson content, learn from it, and then suggest and/or contribute towards corrections and improvements over time. Being able to look behind the curtain opens up a world of learning opportunities.&lt;/p&gt;
&lt;p&gt;For example, my &lt;a href=&#34;https://github.com/swirldev/swirl_courses/pull/75&#34;&gt;first ever pull request on GitHub&lt;/a&gt;, was in the swirl courses repository. It was only a simple spelling correction for lesson content from one of the aforementioned Coursera swirl courses, but you&amp;rsquo;ve got to start somewhere. It&amp;rsquo;s open source projects like swirl that offer these opportunities for &amp;ldquo;getting started&amp;rdquo;.&lt;/p&gt;
&lt;p&gt;In a little over two years since that first pull request, and I have been able to contribute in a number of different ways to various swirl projects and courses, learning as I go. A few months ago, I also decided to get started on two of my own swirl courses, which I&amp;rsquo;m continuing to work on iteratively as and when I can make time. I&amp;rsquo;ve still got a long way to go, but I&amp;rsquo;ve already learnt so much through the process, and will definitely discuss these further in later posts.&lt;/p&gt;
&lt;p&gt;My recommendation is that you checkout swirl if you haven&amp;rsquo;t already done so, because it is worth using. The easiest starting point is the &lt;a href=&#34;http://swirlstats.com/students.html&#34;&gt;students page&lt;/a&gt; on the swirl website, which provides all the steps you&amp;rsquo;ll need (especially if you are completely new to R).&lt;/p&gt;
&lt;p&gt;And if you&amp;rsquo;re a more advanced R user, why not consider contributing a course? The documentation for swirl is excellent, and it is very easy to get started creating a course. All the information you&amp;rsquo;ll need to do so is provided on the &lt;a href=&#34;http://swirlstats.com/instructors.html&#34;&gt;instructors page&lt;/a&gt; on the swirl website. Also note that the developers of swirl have created a swirl course network (SCN) in an effort to &amp;ldquo;list and organize all publicly available swirl courses&amp;rdquo;. If you have created a swirl course or are considering doing so, please &lt;a href=&#34;http://swirlstats.com/swirlify/sharing.html#sharing_your_course_on_the_swirl_course_network&#34;&gt;take a look at this&lt;/a&gt; to find out how to share your course.&lt;/p&gt;
&lt;p&gt;If you need help or would like to collaborate on a swirl course please &lt;a href=&#34;https://www.joncalder.co.za/contact/&#34;&gt;get in touch with me&lt;/a&gt;. I&amp;rsquo;ll be happy to assist where and when I am able to do so.&lt;/p&gt;
</description>
  </item>
  
</channel>
  </rss>