<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Dan Harding</title>
    <description>The latest articles on DEV Community by Dan Harding (@danielharding).</description>
    <link>https://dev.to/danielharding</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F8615%2F016caae2-7794-4819-9827-aab1425bb669.png</url>
      <title>DEV Community: Dan Harding</title>
      <link>https://dev.to/danielharding</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/danielharding"/>
    <language>en</language>
    <item>
      <title>dev.to API: How to Turn DEV Posts into Postcards 📫</title>
      <dc:creator>Dan Harding</dc:creator>
      <pubDate>Thu, 09 May 2019 18:28:48 +0000</pubDate>
      <link>https://dev.to/danielharding/dev-to-api-how-to-turn-posts-into-postcards-2ci7</link>
      <guid>https://dev.to/danielharding/dev-to-api-how-to-turn-posts-into-postcards-2ci7</guid>
      <description>&lt;p&gt;I gain a lot from the DEV community. Whether it's useful tips, project ideas or just learning from other people's experiences. It's the only place I know that offers an equal platform for bloggers and programmers of all abilities, blended in a way that makes accessing interesting and relevant content seem simple.  &lt;/p&gt;

&lt;p&gt;But for it to exist, the community relies on users who are active in sharing content that's new and engaging. This isn't an easy thing to do, and after almost 2 years as a member, it took until February before I felt confident enough to post publicly. However, once it was done, the positive reaction I received gave me the encouragement to write reflectively more often. &lt;/p&gt;

&lt;p&gt;Whilst my work involves tech, I'm not a developer. In fact, the majority of my professional network sits within education, making it less likely for colleagues or peers to encounter (or follow links to) the DEV site. So as I continued to write, it felt increasingly important to find a way of sharing content more flexibly, and one that reaches the broadest possible audience. Twitter helps, but how can DEV content be disguised to appear less 'technical'? &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Answer: The dev.to API.&lt;/strong&gt; 🎉&lt;/p&gt;

&lt;p&gt;But there's a catch. As far as I'm aware, the dev.to API is still experimental. Nevertheless, despite no official documentation, posts from other users provided enough information to test it out.&lt;/p&gt;

&lt;p&gt;By adding a username parameter to the base URL (e.g. &lt;a href="https://dev.to/api/articles?username=devteam"&gt;https://dev.to/api/articles?username=devteam&lt;/a&gt;), the API returns a JSON file containing metadata related to the articles from a specified user. After 'fetching' the data with a basic fetch() method, it's then available to manipulate with JavaScript and add to the DOM.&lt;/p&gt;

&lt;p&gt;The snippet below shows how this works, printing the JSON to the console:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;    &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;script&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="nx"&gt;fetch&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;https://dev.to/api/articles?username=devteam&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
        &lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;then&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;response&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
            &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;response&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;json&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
        &lt;span class="p"&gt;})&lt;/span&gt;
        &lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;then&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;myJson&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
            &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;myJson&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
        &lt;span class="p"&gt;});&lt;/span&gt;
    &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="sr"&gt;/script&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;For me, this offers a perfect solution for adding DEV content to other sites (including my own), with extra flexibility for defining how it appears. For example, the CodePen below shows how each article can be presented as an individual card, styled in a way that matches the containing site. But also by using CSS Grid for the target div, any amount of posts can be added to the page whilst keeping the layout responsive.    &lt;/p&gt;

&lt;p&gt;&lt;iframe height="600" src="https://codepen.io/danieladamharding/embed/GaJgLN?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;If you'd like to see how the API can be used to create a blog section of a portfolio website, please visit &lt;a href="https://danharding.co.uk"&gt;danharding.co.uk&lt;/a&gt; or feel free to play with the CodePen.&lt;/p&gt;

&lt;p&gt;And if you have any feedback, I'm always interested to hear it! 👨🏻‍💻&lt;/p&gt;

</description>
      <category>showdev</category>
      <category>beginners</category>
      <category>opensource</category>
      <category>javascript</category>
    </item>
    <item>
      <title>Code-it Notes: Create Your Own! 📝</title>
      <dc:creator>Dan Harding</dc:creator>
      <pubDate>Mon, 08 Apr 2019 21:10:17 +0000</pubDate>
      <link>https://dev.to/danielharding/code-it-notes-create-your-own-1hj4</link>
      <guid>https://dev.to/danielharding/code-it-notes-create-your-own-1hj4</guid>
      <description>&lt;p&gt;A few weeks ago, I prototyped an idea to help me better understand the JavaScript methods I always seemed to forget.&lt;/p&gt;

&lt;p&gt;The idea was simple. Create Post-it note like summaries that could be refered to whenever I needed them. An explaination on one side and an example on the other. I love &lt;a href="https://developer.mozilla.org/en-US/" rel="noopener noreferrer"&gt;MDN&lt;/a&gt; and &lt;a href="https://www.w3schools.com/" rel="noopener noreferrer"&gt;W3Schools&lt;/a&gt;, but putting something into your own words always seems better when trying to decipher how a piece of code works.&lt;/p&gt;

&lt;p&gt;Feedback from the &lt;a href="https://dev.to/danielharding/code-it-notes---2gli"&gt;original dev.to post&lt;/a&gt; was reassuringly positive, but as I'd created the notes in Google Slides, designing new topics soon became time consuming. Post-it notes are meant to be quick, and this certainly wasn't. &lt;/p&gt;


&lt;div class="liquid-comment"&gt;
    &lt;div class="details"&gt;
      &lt;a href="/benfaught"&gt;
        &lt;img class="profile-pic" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F76928%2F5a529820-7556-4354-a5f3-3a0ef21139fe.jpeg" alt="benfaught profile image"&gt;
      &lt;/a&gt;
      &lt;a href="/benfaught"&gt;
        &lt;span class="comment-username"&gt;Benjamin Faught&lt;/span&gt;
      &lt;/a&gt;
      &lt;span class="color-base-30 px-2 m:pl-0"&gt;•&lt;/span&gt;

&lt;a href="https://dev.to/benfaught/comment/9iho" class="comment-date crayons-link crayons-link--secondary fs-s"&gt;
  &lt;time class="date-short-year"&gt;
    Mar 23 '19
  &lt;/time&gt;

&lt;/a&gt;

    &lt;/div&gt;
    &lt;div class="body"&gt;
      

&lt;p&gt;Simple, concise, and effective. Put these on the web please.🙏  They deserve their own site. 💯&lt;/p&gt;



    &lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;Following a few encouraging comments, it felt worthwhile to spend some time thinking about how to recreate the notes in a more flexible format. Releasing the Google Slides deck would be the easiest way, but the same problems would still exist. I'd also experimented with Instagram (see below), but images containing text have poor accessibility and don't allow for further editing (although swiping between each side worked really well). Back to the drawing board.  &lt;/p&gt;


&lt;div class="instagram-position"&gt;
  &lt;iframe id="instagram-liquid-tag" src="https://www.instagram.com/p/BvH2z08nONS/embed/captioned/"&gt;
  &lt;/iframe&gt;
  
&lt;/div&gt;


&lt;p&gt;The solution came thanks to the dev.to markdown editor's use of Liquid tags. By building a template in CodePen and embedding it here on dev.to, anybody would be able to fork the pen, remix and share their creation back to the community (or anywhere else for that matter). What's more, the &lt;a href="https://dev.to/t/explainlikeimfive"&gt;#explainlikeimfive&lt;/a&gt; hashtag seemed a perfect fit for what I was trying to achieve. Take a coding concept, boil it down to its simplest form and give an example. That's it! 👌 &lt;/p&gt;

&lt;p&gt;&lt;iframe height="600" src="https://codepen.io/danieladamharding/embed/dLXBJQ?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;An added bonus is that you get to tinker with a bit of code whilst making a Code-it. There's CSS Grid, clip paths, variables, media queries, transitions, basic JavaScript and more. Don't like it? Rip it up and edit it until you do. &lt;/p&gt;

&lt;p&gt;So, if you're interested in creating your own Code-it note, here are the instructions: &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How to Create Your Own Code-it Note&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Fork the pen. &lt;/li&gt;
&lt;li&gt;Decide on a topic for your Code-it. Remember, the smaller the better (e.g. a single JavaScript method, CSS property etc).&lt;/li&gt;
&lt;li&gt;Research the topic and edit your pen. &lt;/li&gt;
&lt;li&gt;Once you've finished, write a new dev.to post, tag it with #explainlikeimfive and embed your new pen.&lt;/li&gt;
&lt;li&gt;Take pride in improving your own knowledge whilst also creating a community resource for other people to benefit from!&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The pen includes a link to the &lt;a href="https://fontawesome.com/icons?d=gallery&amp;amp;m=free" rel="noopener noreferrer"&gt;FontAwesome&lt;/a&gt; CDN, so feel free to use their library of free icons to illustrate your creations. &lt;/p&gt;

&lt;p&gt;If you have any feedback, or would like to offer suggestions about how the template code could be improved, I'd love to hear it.  &lt;/p&gt;

</description>
      <category>explainlikeimfive</category>
      <category>beginners</category>
      <category>tutorial</category>
      <category>javascript</category>
    </item>
    <item>
      <title>Code-it® Notes 📝  for JavaScript</title>
      <dc:creator>Dan Harding</dc:creator>
      <pubDate>Sun, 17 Mar 2019 14:48:30 +0000</pubDate>
      <link>https://dev.to/danielharding/code-it-notes---2gli</link>
      <guid>https://dev.to/danielharding/code-it-notes---2gli</guid>
      <description>&lt;p&gt;Everybody loves a Post-it note. For organising, taking messages, even project planning. Their versatility makes them perfect for tasks that only require bitesize pieces of information. They're big enough to scribble a few words on, but too small for more than a couple of sentences. &lt;/p&gt;

&lt;p&gt;And it's no surprise that digital stickies have become a popular feature of notetaking apps too. Padlet, Google Jamboard and Trello all use their own versions. Breaking down big ideas into smaller, managable chunks makes the most difficult challenges somehow  more achievable.&lt;/p&gt;

&lt;p&gt;I prefer to study by taking detailed handwritten notes, but this makes finding  specific reminders frustrating. Particularly when it comes to JavaScript. I revisit the same tutorials, each time taking notes, only to still have trouble remembering how different data types and methods work later on. &lt;/p&gt;

&lt;p&gt;So to try and solve this problem, I've decided to combine the Post-it format with a consistent note taking style; &lt;strong&gt;Code-it notes!&lt;/strong&gt;&lt;/p&gt;


&lt;div class="instagram-position"&gt;
  &lt;iframe id="instagram-liquid-tag" src="https://www.instagram.com/p/BvEyqj_njyt/embed/captioned"&gt;
  &lt;/iframe&gt;
  
&lt;/div&gt;


&lt;p&gt;Each note explains a single topic (e.g. a JavaScript method) in simple, non-jargon language, with an annotated example on the back. Every time I study something new, I'll create a note, share it online and steadily build a resource that will grow into a handy reference library. I'm starting with JavaScript (as that's what I need to revise most), but hope to cover HTML and CSS too. &lt;/p&gt;


&lt;div class="instagram-position"&gt;
  &lt;iframe id="instagram-liquid-tag" src="https://www.instagram.com/p/BvFXAE5nQGb/embed/captioned"&gt;
  &lt;/iframe&gt;
  
&lt;/div&gt;


&lt;p&gt;If you'd like to use Code-it notes, I'll be sharing them via Instagram initially and building the collection as a Google Slides presentation. To get started, the first 3 have been embedded here on dev.to.&lt;/p&gt;


&lt;div class="instagram-position"&gt;
  &lt;iframe id="instagram-liquid-tag" src="https://www.instagram.com/p/BvH2z08nONS/embed/captioned"&gt;
  &lt;/iframe&gt;
  
&lt;/div&gt;
  

&lt;p&gt;If you have any feedback, or would like to request a topic, I'd be interested to hear it! 👨‍💻&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>beginners</category>
      <category>webdev</category>
      <category>explainlikeimfive</category>
    </item>
    <item>
      <title>Abstract: The Art of CSS Grid</title>
      <dc:creator>Dan Harding</dc:creator>
      <pubDate>Mon, 11 Mar 2019 22:28:08 +0000</pubDate>
      <link>https://dev.to/danielharding/abstract-the-art-of-css-grid-5ddd</link>
      <guid>https://dev.to/danielharding/abstract-the-art-of-css-grid-5ddd</guid>
      <description>&lt;p&gt;&lt;em&gt;This article is based on a presentation given at MozFest 2018. The full slide deck can be found at &lt;a href="http://tinyurl.com/mozfestgridslides" rel="noopener noreferrer"&gt;tinyurl.com/mozfestslides&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;I watch a lot of Netflix. And as with most streaming services, once the series you originally signed up for is finished, you inevitably start searching for other programmes that look &lt;em&gt;kind of&lt;/em&gt; interesting. Over the years, this has led to me discovering some of my favourite shows and it's also how I stumbled across &lt;a href="https://www.netflix.com/gb/title/80057883" rel="noopener noreferrer"&gt;&lt;em&gt;Abstract: The Art of Design&lt;/em&gt;&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Episode 1 begins with Christoph Niemann. An illustrator, artist and author whose work you may already recognise. It spans almost every genre, from &lt;a href="https://www.newyorker.com/culture/culture-desk/cover-story-2016-05-16" rel="noopener noreferrer"&gt;augmented reality magazine covers&lt;/a&gt; to &lt;a href="https://www.nationalgeographic.com/travel/destinations/europe/norway/christoph-niemann-artist-trip-svalbard-norway/" rel="noopener noreferrer"&gt;National Geographic expeditions&lt;/a&gt;. But what does it have in common with learning to code? At this point, not much.&lt;/p&gt;

&lt;p&gt;As you get into the episode, Christoph begins to explain his creative process and the importance of abstraction. Although his portfolio includes some intricately detailed work, he stresses that art rarely requires a lot of information. In fact, unneccessary detail often weakens the original idea. He demonstrates this with the 'Abstract-o-meter'. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fa2htf6o3rkb95lh1mimv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fa2htf6o3rkb95lh1mimv.png" alt="Christoph Nieman's Abstract-o-meter"&gt;&lt;/a&gt;&lt;/p&gt;
The concept of love illustrated via Christoph Niemann's 'Abstract-o-meter'.



&lt;p&gt;Christoph has gone to some fairly extrodinary lengths to prove his theory, repeatedly breaking complex images into simple blocks of colour whilst somehow retaining their identity. His tribute to New York in &lt;a href="https://www.theguardian.com/books/gallery/2010/apr/24/christoph-niemann-i-lego-new-york" rel="noopener noreferrer"&gt;I Lego NY&lt;/a&gt; and a &lt;a href="https://www.itsnicethat.com/articles/christoph-niemann-wannsee-train-station-art-141118" rel="noopener noreferrer"&gt;tiled underpass in Berlin&lt;/a&gt; are 2 standout examples. But it was his next comment that sparked an idea of how abstraction might offer a more creative route into coding.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fyb1q2xeubv4c71l5z3rp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fyb1q2xeubv4c71l5z3rp.png" alt="“Each idea requires a very specific amount of information. Sometimes it’s a lot. A lot of details, a lot of realism. Sometimes it’s just one line or the one pixel.” - Christoph Niemann"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;My journey into frontend development is similar to most, consisting of endless video tutorials, occasional quizzes and small projects. After a while this gets incredibly tedious, so what if there's a different way? Something that encourages imagination, places an emphasis on making and evidences learning? With the help of some unwitting MozFest attendees, I decided to test this theory.        &lt;/p&gt;

&lt;p&gt;I pitched a 1 hour workshop, something I'd never done before, and to my surprise was accepted. The idea was to substitute Christoph's example with characters from popular films, cartoons and TV series to see if they could be recognised without first seeing the original. If it worked, I would use the abstract images to teach 1 aspect of frontend development; a fundamental concept that has applications in the real world. The session would be called "Creative Coding with CSS Grid". &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fpxmpdjkt5vjmyf4fc3qj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fpxmpdjkt5vjmyf4fc3qj.png"&gt;&lt;/a&gt;The 3 stages of Bart Simpson according to Christoph Niemann's ‘Abstract-o-meter’.&lt;/p&gt;

&lt;p&gt;Thanks to &lt;a href="http://www.stoll.space/design#/4x4/" rel="noopener noreferrer"&gt;a project by David Stoll&lt;/a&gt;, a quick Google search returned some perfect pixelated examples. To help translate David's creations into CSS and HTML, a series of worksheets would explain the basic syntax and provide step-by-step instructions on how to 'build' each character with a choice of offline or online tools. The session was advertised as beginner friendly, requiring little or no previous coding knowledge.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2F1gxahi64e51cyk3ibirj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2F1gxahi64e51cyk3ibirj.png" alt="An 8-bit Bart Simpson built using CSS Grid"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;After changing rooms to accomodate the extra attendees, the same explanation was given and the theory again tested. With most people recognising the characters, we quickly moved onto a warm up exercise and finally the worksheets. Most opted to  live code the examples, with experienced developers happily working alongside code newbies to solve each miniature puzzle.    &lt;/p&gt;

&lt;p&gt;&lt;iframe class="tweet-embed" id="tweet-1056527808145616896-74" src="https://platform.twitter.com/embed/Tweet.html?id=1056527808145616896"&gt;
&lt;/iframe&gt;

  // Detect dark theme
  var iframe = document.getElementById('tweet-1056527808145616896-74');
  if (document.body.className.includes('dark-theme')) {
    iframe.src = "https://platform.twitter.com/embed/Tweet.html?id=1056527808145616896&amp;amp;theme=dark"
  }



&lt;/p&gt;

&lt;p&gt;Having whet their appetite, the final step was to demonstrate some real life examples of CSS Grid and show how creating an 8-bit Bart Simpson is no different than building a layout for the web. The feedback was overwhelmingly positive, and it was rewarding to see people leaving the session with a newfound enthusiasm for creative coding. &lt;/p&gt;

&lt;p&gt;&lt;iframe class="tweet-embed" id="tweet-1056513631184150528-617" src="https://platform.twitter.com/embed/Tweet.html?id=1056513631184150528"&gt;
&lt;/iframe&gt;

  // Detect dark theme
  var iframe = document.getElementById('tweet-1056513631184150528-617');
  if (document.body.className.includes('dark-theme')) {
    iframe.src = "https://platform.twitter.com/embed/Tweet.html?id=1056513631184150528&amp;amp;theme=dark"
  }



&lt;/p&gt;

&lt;p&gt;Want to try the worksheets for yourself? A teacher's pack can be found at &lt;a href="http://tinyurl.com/mozfestgridworksheets" rel="noopener noreferrer"&gt;tinyurl.com/mozfestgridworksheets&lt;/a&gt;. All materials are produced as open educational resources and licensed under &lt;a href="https://creativecommons.org/licenses/by-sa/4.0/" rel="noopener noreferrer"&gt;CC BY-SA 4.0&lt;/a&gt;. &lt;/p&gt;

&lt;p&gt;Have fun! 🎨&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>codenewbie</category>
      <category>css</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Zines as Open Educational Resources for Code Newbies</title>
      <dc:creator>Dan Harding</dc:creator>
      <pubDate>Sat, 23 Feb 2019 21:12:31 +0000</pubDate>
      <link>https://dev.to/danielharding/zines-as-open-educational-resources-for-code-newbies-2he8</link>
      <guid>https://dev.to/danielharding/zines-as-open-educational-resources-for-code-newbies-2he8</guid>
      <description>&lt;p&gt;Creating open educational resources (OER) is a great way to test or refresh your knowledge whilst helping others to learn.&lt;/p&gt;

&lt;p&gt;At October's &lt;a href="https://mozillafestival.org/" rel="noopener noreferrer"&gt;MozFest&lt;/a&gt;, I was fortunate enough to stop by &lt;a href="https://twitter.com/EleonoreMayola" rel="noopener noreferrer"&gt;Éléonore&lt;/a&gt; and &lt;a href="https://twitter.com/malweene" rel="noopener noreferrer"&gt;Malwine's&lt;/a&gt; zine display. I'd missed their session, but the mini magazines they had inspired demonstrated how any subject, from complicated data science to city guides, could be broken down into bitesize indie publications. All you needed was a piece of paper, pen and a topic to share.&lt;/p&gt;

&lt;p&gt;Fast forward a few months and after a couple of test runs, creating something related to coding seemed like a neat idea. Repurposing existing resources had worked well, and designing them digitally meant they could be quickly adapted or updated whilst also sharing them online.&lt;/p&gt;

&lt;p&gt;Staying true to the 'zine ethos' meant avoiding heavyweight DTP tools, learning curves or the need for a degree in graphic design (although you can probably create some awesome zines if you did). Google Slides, PowerPoint or any other package that allows you to combine basic shapes, text and colour is all you need.&lt;/p&gt;

&lt;p&gt;What's more, adding an open license to your work (e.g. &lt;a href="https://creativecommons.org/share-your-work/" rel="noopener noreferrer"&gt;Creative Commons&lt;/a&gt;) gives others the opportunity to remix or develop your idea into something they can make their own. Especially if it's published in a format that's readily editable. Everybody wins!&lt;/p&gt;

&lt;p&gt;From speaking with more experienced developers, it's easy to forget how hard it can be to learn so many new things all at the same time. But even as a beginner, I was still able to produce an introductory guide to CSS Grid that covers some of its basic principles. And that's the beauty of zines, they are for newbies and experts alike. &lt;/p&gt;

&lt;p&gt;Here's the end result:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fyylisnz1u7999z0u0esl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fyylisnz1u7999z0u0esl.png" alt="CSS Grid Zine layout in Google Slides"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;From there, the slides could be quickly pasted into a printable template (see below) and recorded as a gif or video (although watch out for accessibility issues). &lt;/p&gt;

&lt;p&gt;&lt;iframe class="tweet-embed" id="tweet-1099409959270391810-974" src="https://platform.twitter.com/embed/Tweet.html?id=1099409959270391810"&gt;
&lt;/iframe&gt;

  // Detect dark theme
  var iframe = document.getElementById('tweet-1099409959270391810-974');
  if (document.body.className.includes('dark-theme')) {
    iframe.src = "https://platform.twitter.com/embed/Tweet.html?id=1099409959270391810&amp;amp;theme=dark"
  }



&lt;/p&gt;

&lt;p&gt;Think you can explain a coding topic as a zine? Then give it a try! &lt;/p&gt;

&lt;p&gt;Here are some resources you might find helpful:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A &lt;a href="https://docs.google.com/presentation/d/1dtOTSf3le10-647Oe7JT4F81m3w0bWcODpI-j_zuK_M/edit?usp=sharing" rel="noopener noreferrer"&gt;Google Slides zine template&lt;/a&gt; (&lt;em&gt;File&lt;/em&gt; → &lt;em&gt;Make a copy...&lt;/em&gt;) &lt;/li&gt;
&lt;li&gt;Royalty free images from &lt;a href="https://unsplash.com/" rel="noopener noreferrer"&gt;Unsplash&lt;/a&gt; (be kind and credit your sources)&lt;/li&gt;
&lt;li&gt;Royalty free icons from &lt;a href="https://thenounproject.com/" rel="noopener noreferrer"&gt;Noun Project&lt;/a&gt; (ditto)&lt;/li&gt;
&lt;li&gt;An open license, available from &lt;a href="https://creativecommons.org/share-your-work/" rel="noopener noreferrer"&gt;creativecommons.org&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;You'll also need: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A printer&lt;/li&gt;
&lt;li&gt;A pair of scissors&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;And if this zine has whet your appetite for more CSS Grid, I highly recommend you check out Wes Bos' &lt;a href="https://cssgrid.io/" rel="noopener noreferrer"&gt;free course&lt;/a&gt;, Jen Simmons' &lt;a href="https://youtube.com/layoutland" rel="noopener noreferrer"&gt;Layout Land&lt;/a&gt; or Rachel Andrew's &lt;a href="https://gridbyexample.com" rel="noopener noreferrer"&gt;Grid by Example&lt;/a&gt;. 💯👌&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>beginners</category>
      <category>css</category>
      <category>codenewbie</category>
    </item>
  </channel>
</rss>
