<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/"
    xmlns:atom="http://www.w3.org/2005/Atom" xmlns:media="http://search.yahoo.com/mrss/" version="2.0">
    <channel>
        
        <title>
            <![CDATA[ Women Who Code - freeCodeCamp.org ]]>
        </title>
        <description>
            <![CDATA[ Browse thousands of programming tutorials written by experts. Learn Web Development, Data Science, DevOps, Security, and get developer career advice. ]]>
        </description>
        <link>https://www.freecodecamp.org/news/</link>
        <image>
            <url>https://cdn.freecodecamp.org/universal/favicons/favicon.png</url>
            <title>
                <![CDATA[ Women Who Code - freeCodeCamp.org ]]>
            </title>
            <link>https://www.freecodecamp.org/news/</link>
        </image>
        <generator>Eleventy</generator>
        <lastBuildDate>Sun, 17 May 2026 16:33:09 +0000</lastBuildDate>
        <atom:link href="https://www.freecodecamp.org/news/tag/women-who-code/rss.xml" rel="self" type="application/rss+xml" />
        <ttl>60</ttl>
        
            <item>
                <title>
                    <![CDATA[ How I became a web developer in under 7 months – and how you can too ]]>
                </title>
                <description>
                    <![CDATA[ By Niamh McCooey Around this time last year I started learning the basics of code in my spare time, and sure enough found myself working as a professional developer just 7 months later – with no CS degree, no bootcamp, and no clue. So if you’re readi... ]]>
                </description>
                <link>https://www.freecodecamp.org/news/how-i-became-a-web-developer-in-under-7-months-and-how-you-can-too/</link>
                <guid isPermaLink="false">66d460409208fb118cc6cff4</guid>
                
                    <category>
                        <![CDATA[ code newbie ]]>
                    </category>
                
                    <category>
                        <![CDATA[ coding ]]>
                    </category>
                
                    <category>
                        <![CDATA[ community ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Developer ]]>
                    </category>
                
                    <category>
                        <![CDATA[ development ]]>
                    </category>
                
                    <category>
                        <![CDATA[ diversity in tech ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Front-end Development ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Junior developer  ]]>
                    </category>
                
                    <category>
                        <![CDATA[ learning to code ]]>
                    </category>
                
                    <category>
                        <![CDATA[ motivation ]]>
                    </category>
                
                    <category>
                        <![CDATA[ professional development ]]>
                    </category>
                
                    <category>
                        <![CDATA[ self-improvement  ]]>
                    </category>
                
                    <category>
                        <![CDATA[ woman in tech ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Women Who Code ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ freeCodeCamp ]]>
                </dc:creator>
                <pubDate>Mon, 21 Oct 2019 06:59:00 +0000</pubDate>
                <media:content url="https://www.freecodecamp.org/news/content/images/2019/10/ninetofive-1.jpg" medium="image" />
                <content:encoded>
                    <![CDATA[ <p>By Niamh McCooey</p>
<p>Around this time last year I started learning the basics of code in my spare time, and sure enough found myself working as a professional developer just 7 months later – with no CS degree, no bootcamp, and no clue.</p>
<p>So if you’re reading this you’re probably thinking: how on earth did that happen?</p>
<p>Well, my thoughts exactly.</p>
<p>In this article I’ll share what I did in those initial 7 months leading up to my first ever dev job. I’ll also include lots of resources I found helpful along the way, and bits of advice that I wish I had taken on sooner.</p>
<p>If you’re a fellow coding beginner aiming to make a similar career change into web development, my hope is that this article offers you some guidance… </p>
<p><em>(If you haven’t started coding yet but want to find ways to begin, you might find</em> <a target="_blank" href="https://www.freecodecamp.org/news/the-first-step-towards-learning-to-code-2e4c31e86630/"><em><strong>my previous article</strong></em></a> <em>a little more helpful, which includes lots of insights on how to take that first step towards learning to code.)</em> </p>
<p>So, lesson number 1: </p>
<h2 id="heading-share-your-interest-early">? Share your interest early.</h2>
<p>When I seriously started thinking about programming, the first thing I did was <em>talk about it</em>.</p>
<p>I asked my friends and family if anyone knew any developers who’d be willing to chat about their jobs, and ended up meeting so many smart and creative people who gave genuine, practical and (most importantly) varying insights.</p>
<p>The key here is to try and meet as many different kinds of developers as possible. If you can, speak to people with all sorts of interests and specialties at various stages in their careers. This kind of access can unveil the variety involved in programming, and you can use it to demystify the idea of coding as this big, scary thing. </p>
<p>Another good habit to pick up early is to constantly:</p>
<h2 id="heading-ask">? Ask.</h2>
<p>I asked developers some of the most basic things like:   </p>
<ul>
<li>What the hell is GitHub?</li>
<li>Do you really not need a computer science degree?</li>
<li>Why is everyone always talking about React?</li>
<li>What kind of tech jobs do you think there’ll be in 10 years time?</li>
</ul>
<h2 id="heading-and-go-to-meetups">? And go to meetups.</h2>
<p>If you’re lucky enough to live in a place like London where there are plenty of meetups happening – go!</p>
<p>This is great practice early on not only because you might get to have human beings guide you through coding problems, but because it lets you meet with organisers, coaches, bootcamp students, etc. etc. </p>
<p>By going to meetups you can also build up your network in the industry and hear about potential job opportunities suited to your skill level. </p>
<p>Some of my favourite beginner-friendly and inclusive meetups include:  </p>
<ul>
<li><strong><a target="_blank" href="https://codebar.io/">Codebar</a>.</strong> This is an amazing weekly meetup with over 20 chapters worldwide, where you can work with coaches and really get stuck into your code (they also run virtual meetups for those who can’t make it to events).</li>
<li><strong><a target="_blank" href="https://www.adaslist.co/">Ada’s List</a>.</strong> This organisation runs friendly monthly meetups in London alongside a virtual community online, offering women a great way to meet other women in tech (and not just coders).</li>
<li><strong><a target="_blank" href="https://24pullrequests.com/">24 Pull Requests</a>.</strong> This annual event (also in London) is a lovely place to contribute to open source projects, and includes an introduction to Github – very handy for beginners.</li>
<li><strong><a target="_blank" href="https://nodegirls.com/">Node Girls</a>.</strong> This group organises meetups a couple of times a year in multiple locations, and is a great place for newbies to learn Javascript and Node.js.</li>
</ul>
<h2 id="heading-next-play-the-field">?‍♀️ Next: Play the field.</h2>
<p>For ages, I thought the first thing I had to know about code was what language I wanted to learn. But not only is it ok not to know where to start, I actually think it’s a huge advantage.</p>
<p>There are so many languages and topics out there, and while this can definitely be overwhelming as a beginner, you can also make the most of your naivete and just try it all out without getting too preoccupied with all the surrounding jargon (for instance, you don’t need to know the entire history of CSS to just play around with it) – which leads me to my favourite bit of advice from those initial 7 months...</p>
<h2 id="heading-be-bad">? Be bad.</h2>
<p>When I first started I was so scared of how bad I was going to be. And one of my biggest revelations since then was: <em>nobody cares.</em> </p>
<p>Of course you’re going to be bad at it! You’ll be terrible. But, having a beginner status gives you license to suck at everything, so use it while the stakes are low. Enjoy being terrible – it’s fun, and freeing.</p>
<h2 id="heading-do-the-tutorials">?‍? Do the tutorials.</h2>
<p>When you’re trying to level up from total beginner, tutorials are great because their format eliminates the problem of having to figure out what you want to learn and how you want to learn it (while you’re actually just trying to learn it).</p>
<p>Some of my favourites include:  </p>
<ul>
<li>Any of the <a target="_blank" href="http://tutorials.codebar.io/"><strong>Codebar tutorials</strong></a> (great for learning different languages from scratch)</li>
<li>Rachel Andrew’s <a target="_blank" href="https://gridbyexample.com/"><strong>video tutorials</strong></a> (awesome for learning CSS grid)</li>
<li>NodeGirls <a target="_blank" href="https://nodegirls.com/resources"><strong>workshop tutorials</strong></a> (nicely paced walkthroughs that introduce you to Javascript &amp; Node.js)</li>
</ul>
<p>When it comes to tutorials though, try and understand how you learn best and don’t get bogged down in one method or approach just because it’s the most popular or it was suggested to you. </p>
<p><strong>You might not know much about coding at this stage, but what you do know is how you learn best. So trust your own judgement here.</strong></p>
<p>Here are some different learning methods that have worked well for me:  </p>
<ul>
<li><strong><a target="_blank" href="https://learn.freecodecamp.org/">freeCodeCamp curriculum</a>.</strong> Byte sized exercises for different languages, great for when you need a break from heavy tutorials and want to play around with something a little lighter.</li>
<li><a target="_blank" href="https://flukeout.github.io/"><strong>CSS Diner</strong></a> &amp; <strong><a target="_blank" href="https://flexboxfroggy.com/">Flexbox Froggy</a>.</strong> Two fun games that are great for helping you get to grips with CSS selectors and practicing flexbox layouts.</li>
<li><strong><a target="_blank" href="https://codepen.io/">Codepen</a>.</strong> A coding playground where you can look at people’s projects alongside their code, letting you to connect the dots between the two.</li>
<li><strong><a target="_blank" href="https://grasshopper.codes/">Grasshopper</a>.</strong> A sweet, beginner-friendly mobile app that introduces you to Javascript fundamentals.</li>
<li><strong><a target="_blank" href="https://eloquentjavascript.net/">Eloquent Javascript</a>.</strong> This digital book pairs really well with freeCodeCamp exercises, giving a thorough and foundational understanding of Javascript.</li>
</ul>
<h2 id="heading-be-a-copycat">? Be a copycat.</h2>
<p>Soon enough, you’ll feel like it’s time to build something a bit more substantial. And a really fun way to do this without feeling overwhelmed is by trying to replicate cool stuff you’ve already seen (you can <a target="_blank" href="https://www.awwwards.com/"><strong>browse some cool looking website here</strong></a>). And as you do this:</p>
<h2 id="heading-know-why">? Know why.</h2>
<p>If you’re building your first ever website, before you even get to writing any code remember to ask yourself <em>why</em>. Are you doing it to:  </p>
<ul>
<li>Just fill up your portfolio?</li>
<li>Learn a particular language?</li>
<li>Try out different hacks you’ve heard about?</li>
</ul>
<p>As a beginner, your main reason for building something is probably to learn by doing so your website or app is just a means to an end. It’s the byproduct, not the goal. Remember that.</p>
<p>Knowing this distinction is crucial to learning effectively, especially if you’re teaching yourself because as you’ll quickly learn: everyone’s got their own way of doing things. For instance if you’re building a website as a way to learn flexbox, then don’t let someone talk you into using Bootstrap.</p>
<p>If someone tells you there’s a quicker way to achieve a goal they may be right, but they might not have clarity on what the real aim is.</p>
<h2 id="heading-so-articulate-it">? So articulate it.</h2>
<p>First to yourself, then to others, and then make your own decision about how you want to go about it. This part might seem super obvious, but in the midst of soaking up all that information, it’s all too easy to forget.</p>
<h2 id="heading-then-chill">? Then chill.</h2>
<p>The great thing about self-directed learning is that you decide the whats and the hows right? Well, another great thing is that your deadlines are made up by you, and if you don’t meet them, nobody cares. So give yourself a break!</p>
<h2 id="heading-stay-inspired">⚡️ Stay inspired.</h2>
<p>This learning process is twofold: on one hand you need to spend time figuring out the technical minutiae in your code, and on the other you need to look around every now and again and see what other people are doing.</p>
<p>Blending these two approaches gives a great holistic perspective on your learning, and helps mitigate the stress of getting caught up in all the details. Here are some tips I found useful in my first 7 months:</p>
<h2 id="heading-go-to-conferences">? Go to conferences.</h2>
<ul>
<li><strong><a target="_blank" href="https://2020.yougotthis.io/">You Got This</a>.</strong> This is a UK-based event specifically for developers in the early stages of their careers. I went to it without ever having worked as a developer, felt totally comfortable there and left ready to get stuck into some code.</li>
<li><strong><a target="_blank" href="https://newadventuresconf.com/2020/">New Adventures</a>.</strong> This Nottingham-based conference provides a less technical, more meta approach to tech and where it fits into the world these days. With varied speakers and far-reaching topics, it’s super inspiring.</li>
</ul>
<h2 id="heading-read-up">? Read up.</h2>
<ul>
<li><a target="_blank" href="https://www.freecodecamp.org/news/"><strong>freeCodeCamp</strong></a> (of course)</li>
<li><a target="_blank" href="https://medium.com/@codebar"><strong>Codebar</strong></a> (they run a great series of interviews with self-taught developers)</li>
<li><a target="_blank" href="https://alistapart.com/"><strong>A List Apart</strong></a> (publishes a huge range of topics from design to coding to career progression)</li>
<li><a target="_blank" href="https://www.smashingmagazine.com/"><strong>Smashing Magazine</strong></a> (features articles, books, events, jobs – you name it)</li>
</ul>
<h2 id="heading-follow-people">? Follow people.</h2>
<ul>
<li><a target="_blank" href="http://batmandy.com/"><strong>Mandy Michael</strong></a> – has a lot of seriously cool stuff on Copeden.</li>
<li><a target="_blank" href="https://rachelandrew.co.uk/"><strong>Rachel Andrew</strong></a> – gives loads of inspiring and practical talks, many of which you can find online.</li>
<li><a target="_blank" href="https://jensimmons.com/"><strong>Jen Simmons</strong></a> – has a rich Youtube channel full of insights on design and developing.</li>
<li><a target="_blank" href="https://saron.io/"><strong>Saron Yitbarek</strong></a> – founder &amp; CEO of <a target="_blank" href="https://www.codenewbie.org/"><strong>CodeNewbie</strong></a> – total boss.  </li>
</ul>
<p>And that’s essentially it. Looking back over the last year, I’ve come to realise that these core lessons were what sustained me as I went from being a copywriter who had never looked at a single line of code, to working as a full time developer.</p>
<p>So if you’re thinking about switching careers but are worried about committing to such a big change, try breaking it down into these smaller goals and challenges. </p>
<p>If it can work for a woman who had absolutely no clue what she was doing at the time, it can surely work for you. So please: use these lessons learned, tailor them to your own learning style, and get after it. </p>
<p><img src="https://lh3.googleusercontent.com/KfVMbmrEhlwPoXAeg53mgHOLeXylklhprf77qdkNe9WJI8LdpyUheCHArRc_4xUIDQnjtiZYJOIZErtgp6TDIAXeLavMXUvPzMobLjSWhLWmLfK055ydSVYyj-9DGhjhybiMznIn" alt="Image" width="600" height="400" loading="lazy"></p>
<hr>
<p><em>If you want to get in touch or keep up to date on future articles, talks and events, you can follow me on twitter here:</em> <a target="_blank" href="https://twitter.com/niamhmccoo"><em><strong>https://twitter.com/niamhmccoo</strong></em></a></p>
 ]]>
                </content:encoded>
            </item>
        
            <item>
                <title>
                    <![CDATA[ How to reverse a number in JavaScript ]]>
                </title>
                <description>
                    <![CDATA[ By artismarti Examples using an arrow function and regular JS function _Photo by [Unsplash](https://unsplash.com/@chuttersnap?utm_source=medium&utm_medium=referral" rel="noopener" target="_blank" title="">chuttersnap on <a href="https://unsplash.com... ]]>
                </description>
                <link>https://www.freecodecamp.org/news/js-basics-how-to-reverse-a-number-9aefc20afa8d/</link>
                <guid isPermaLink="false">66c35948c5e11f7a9c406849</guid>
                
                    <category>
                        <![CDATA[ Women Who Code ]]>
                    </category>
                
                    <category>
                        <![CDATA[ algorithms ]]>
                    </category>
                
                    <category>
                        <![CDATA[ JavaScript ]]>
                    </category>
                
                    <category>
                        <![CDATA[ General Programming ]]>
                    </category>
                
                    <category>
                        <![CDATA[ tech  ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ freeCodeCamp ]]>
                </dc:creator>
                <pubDate>Sun, 03 Feb 2019 23:17:43 +0000</pubDate>
                <media:content url="https://cdn-media-1.freecodecamp.org/images/0*9bS6yWpHz8_tuY52" medium="image" />
                <content:encoded>
                    <![CDATA[ <p>By artismarti</p>
<h4 id="heading-examples-using-an-arrow-function-and-regular-js-function">Examples using an arrow function and regular JS function</h4>
<p><img src="https://cdn-media-1.freecodecamp.org/images/0*9bS6yWpHz8_tuY52" alt="Image" width="600" height="400" loading="lazy">
_Photo by [Unsplash](https://unsplash.com/@chuttersnap?utm_source=medium&amp;utm_medium=referral" rel="noopener" target="_blank" title=""&gt;chuttersnap on &lt;a href="https://unsplash.com?utm_source=medium&amp;utm_medium=referral" rel="noopener" target="<em>blank" title=")</em></p>
<p>Reversing a string or reversing a number is one of the common questions asked at programming interviews. Let’s take a look at how this is done.</p>
<h4 id="heading-ruleslimitations"><strong>Rules/Limitations</strong>:</h4>
<ul>
<li>Negative numbers should remain negative.</li>
</ul>
<p><strong><em>ex.</em></strong> <code>-12345</code><em>becomes</em> <code>-54321</code></p>
<ul>
<li>Any leading zeroes should be removed.</li>
</ul>
<p><strong><em>ex.</em></strong> <code>321000</code> <em>becomes</em> <code>123</code> <em>&amp; not</em> <code>000123</code></p>
<ul>
<li>The function can accept floats or integers.</li>
</ul>
<p><strong><em>ex.</em></strong> <code>543.2100</code> <em>becomes</em> <code>12.345</code></p>
<ul>
<li>The function will return integers as integers.</li>
</ul>
<p><strong><em>ex.</em></strong> <code>54321</code> <em>becomes</em> <code>12345</code> <em>&amp; not</em> <code>12345.00</code></p>
<h4 id="heading-solving-with-an-arrow-function"><strong>Solving with an Arrow Function:</strong></h4>
<pre><code class="lang-js"><span class="hljs-keyword">const</span> reversedNum = <span class="hljs-function"><span class="hljs-params">num</span> =&gt;</span> <span class="hljs-built_in">parseFloat</span>(num.toString().split(<span class="hljs-string">''</span>).reverse().join(<span class="hljs-string">''</span>)) * <span class="hljs-built_in">Math</span>.sign(num)
</code></pre>
<h4 id="heading-solving-with-a-regular-function"><strong>Solving with a Regular Function:</strong></h4>
<pre><code class="lang-js"><span class="hljs-function"><span class="hljs-keyword">function</span> <span class="hljs-title">reversedNum</span>(<span class="hljs-params">num</span>) </span>{
  <span class="hljs-keyword">return</span> (
    <span class="hljs-built_in">parseFloat</span>(
      num
        .toString()
        .split(<span class="hljs-string">''</span>)
        .reverse()
        .join(<span class="hljs-string">''</span>)
    ) * <span class="hljs-built_in">Math</span>.sign(num)
  )                 
}
</code></pre>
<h4 id="heading-difference-between-an-arrow-function-amp-regular-function"><strong><em>Difference between an Arrow function &amp; Regular function:</em></strong></h4>
<p>In this example, the only difference between the Arrow Function and the Regular function is that the Regular function needs to provide an explicit <code>return</code> value.</p>
<p>Arrow functions have an implicit <code>return</code> value — if they can be written in one line, without the need for the<code>{}</code> braces.</p>
<div class="embed-wrapper"><iframe height="500px" width="100%" src="https://repl.it/@artismarti/ReversedNumbers?lite=true" sandbox="allow-forms allow-pointer-lock allow-popups allow-same-origin allow-scripts allow-modals" title="Embedded content" loading="lazy"></iframe></div>

<h4 id="heading-lets-break-the-steps-down"><strong>Let’s break the steps down:</strong></h4>
<ul>
<li><strong>Convert the number to a string</strong></li>
</ul>
<p><code>num.toString()</code> converts the given number into a String. We do this so we can use the <code>split</code> function on it next.</p>
<pre><code class="lang-js"><span class="hljs-keyword">let</span> num = <span class="hljs-number">-5432100</span>
num.toString()

<span class="hljs-comment">// num = '-5432100'</span>
</code></pre>
<ul>
<li><strong>Split the String into an Array</strong></li>
</ul>
<p><code>num.split('')</code> converts the String into an Array of characters. We do this so we can use the Array reverse function (<em>which does not work on a String</em>).</p>
<pre><code class="lang-js"><span class="hljs-comment">// num = '-5432100'</span>

num.split(<span class="hljs-string">''</span>)

<span class="hljs-comment">// num = [ '-', '5', '4', '3', '2', '1', '0', '0' ]</span>
</code></pre>
<ul>
<li><strong>Reverse the Array</strong></li>
</ul>
<p><code>num.reverse()</code> reverses the order of the items in the array.</p>
<pre><code class="lang-js"><span class="hljs-comment">// num = [ '-', '5', '4', '3', '2', '1', '0', '0' ]</span>

num.reverse()

<span class="hljs-comment">// num = [ '0', '0', '1', '2', '3', '4', '5', '-' ]</span>
</code></pre>
<ul>
<li><strong>Join it back into a string</strong></li>
</ul>
<p><code>num.join('')</code> reassembles the reversed characters into a String.</p>
<pre><code class="lang-js"><span class="hljs-comment">// num = [ '0', '0', '1', '2', '3', '4', '5', '-' ]</span>

num.join(<span class="hljs-string">''</span>)

<span class="hljs-comment">// num = '0012345-'</span>
</code></pre>
<ul>
<li><a target="_blank" href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/parseFloat"><strong>Parse</strong></a> <strong>the input value into a floating point number:</strong></li>
</ul>
<p><code>parseFloat(num)</code> converts <code>num</code> into a float from a String.</p>
<pre><code class="lang-js"><span class="hljs-comment">// num = '0012345-'</span>

<span class="hljs-built_in">parseFloat</span>(num)

<span class="hljs-comment">// num = 12345</span>
</code></pre>
<p><strong>Note</strong>: <code>parseFloat</code> runs in the end <em>(even though it is on the first line of the function)</em> on the reversed number and removes any leading zeroes.</p>
<ul>
<li><strong>Multiply it by the <a target="_blank" href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/sign">sign</a> of the original number — to maintain the negative value.</strong></li>
</ul>
<p><code>num * Math.sign(num)</code> multiplies the number with the sign of the original number provided.</p>
<pre><code class="lang-js"><span class="hljs-comment">// original value of num = -5432100</span>
<span class="hljs-comment">// num = 12345</span>

num * <span class="hljs-built_in">Math</span>.sign(<span class="hljs-number">-5432100</span>)

<span class="hljs-comment">// num = -12345</span>
</code></pre>
<p>And, there you have it!</p>
 ]]>
                </content:encoded>
            </item>
        
    </channel>
</rss>
