<?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" version="2.0" xmlns:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[BeCode - Medium]]></title>
        <description><![CDATA[BeCode: Learn to code, get a job ! - Medium]]></description>
        <link>https://medium.com/becode?source=rss----7a2ed1815ac9---4</link>
        <image>
            <url>https://cdn-images-1.medium.com/proxy/1*TGH72Nnw24QL3iV9IOm4VA.png</url>
            <title>BeCode - Medium</title>
            <link>https://medium.com/becode?source=rss----7a2ed1815ac9---4</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Fri, 13 Nov 2026 23:54:37 GMT</lastBuildDate>
        <atom:link href="https://medium.com/feed/becode" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com/" rel="hub"/>
        <item>
            <title><![CDATA[BeCode news : Official visits.]]></title>
            <link>https://medium.com/becode/becode-news-official-visits-8de3cc029601?source=rss----7a2ed1815ac9---4</link>
            <guid isPermaLink="false">https://medium.com/p/8de3cc029601</guid>
            <dc:creator><![CDATA[Marketing BeCode]]></dc:creator>
            <pubDate>Fri, 06 Dec 2019 10:55:35 GMT</pubDate>
            <atom:updated>2019-12-06T10:55:34.972Z</atom:updated>
            <content:encoded><![CDATA[<h3>BeCode news : Official visits.</h3><p><strong>Official visits</strong></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*f6HCjYsDsl8CpZGx.png" /></figure><p>As part of our mission to make the digital revolution accessible to all, we have been honored to talk about our project and our activities for kids with Brussels Minister of Employment, Professional Training, Digital Transition <strong>Bernard Clerfayt</strong>, Minister of Education <strong>Caroline Désir</strong> and Mayor of Brussels <strong>Philippe Close</strong>.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=8de3cc029601" width="1" height="1" alt=""><hr><p><a href="https://medium.com/becode/becode-news-official-visits-8de3cc029601">BeCode news : Official visits.</a> was originally published in <a href="https://medium.com/becode">BeCode</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[BeCode News : New generations of BeCoders.]]></title>
            <link>https://medium.com/becode/becode-news-new-generations-of-becoders-833626119598?source=rss----7a2ed1815ac9---4</link>
            <guid isPermaLink="false">https://medium.com/p/833626119598</guid>
            <dc:creator><![CDATA[Marketing BeCode]]></dc:creator>
            <pubDate>Fri, 06 Dec 2019 10:53:51 GMT</pubDate>
            <atom:updated>2019-12-06T10:53:51.181Z</atom:updated>
            <content:encoded><![CDATA[<h3>BeCode News : <strong>New generations of BeCoders.</strong></h3><p><strong>New generations of BeCoders</strong></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*9RWxf7GuLE9wq9ci.jpeg" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*on06fJnf4kjRJJFl.jpg" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*p9Wt3_d2mt2uMEim.jpg" /></figure><p>We’re happy to welcome new generations of learners in Charleroi, Antwerp and Ghent!</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=833626119598" width="1" height="1" alt=""><hr><p><a href="https://medium.com/becode/becode-news-new-generations-of-becoders-833626119598">BeCode News : New generations of BeCoders.</a> was originally published in <a href="https://medium.com/becode">BeCode</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[BeCode News : Graduations galore!]]></title>
            <link>https://medium.com/becode/becode-news-graduations-galore-1b86f87b4e3d?source=rss----7a2ed1815ac9---4</link>
            <guid isPermaLink="false">https://medium.com/p/1b86f87b4e3d</guid>
            <dc:creator><![CDATA[Marketing BeCode]]></dc:creator>
            <pubDate>Fri, 06 Dec 2019 10:38:55 GMT</pubDate>
            <atom:updated>2019-12-06T10:38:55.565Z</atom:updated>
            <content:encoded><![CDATA[<h3>BeCode News : Graduations galore!</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*ZF4PzXQXq4ain813.png" /></figure><p>We just graduated 3 web development groups in Liège and Charleroi, an amazing opportunity for us to acknowledge our BeCoder’s hard work and to celebrate their beautiful success on their new career path.</p><p>Congratulations to all!</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=1b86f87b4e3d" width="1" height="1" alt=""><hr><p><a href="https://medium.com/becode/becode-news-graduations-galore-1b86f87b4e3d">BeCode News : Graduations galore!</a> was originally published in <a href="https://medium.com/becode">BeCode</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Sharing Open Badges on LinkedIn]]></title>
            <link>https://medium.com/becode/sharing-open-badges-on-linkedin-2cddb05e0aa7?source=rss----7a2ed1815ac9---4</link>
            <guid isPermaLink="false">https://medium.com/p/2cddb05e0aa7</guid>
            <category><![CDATA[open-badges]]></category>
            <category><![CDATA[badgr]]></category>
            <category><![CDATA[becode]]></category>
            <category><![CDATA[certification]]></category>
            <dc:creator><![CDATA[Alexandre Plennevaux]]></dc:creator>
            <pubDate>Tue, 03 Dec 2019 16:41:52 GMT</pubDate>
            <atom:updated>2019-12-03T16:44:07.750Z</atom:updated>
            <content:encoded><![CDATA[<h4>So you earned skill badges during your training at BeCode? Great, let’s make something useful for your career and display them on your LinkedIn profile, for employers to see!</h4><p>There are 2 different ways you can share badges to LinkedIn; as a post to your LinkedIn Feed or to the Certifications section of your profile.</p><p><strong>Sharing badges to your LinkedIn Feed</strong></p><ol><li>From the Award Email, Badgr Backpack or within a Canvas course, select the badge you wish to share.</li><li>Select the LinkedIn button.</li><li>If you are not signed in, you will be prompted to enter your LinkedIn credentials.</li><li>Once signed in (or if already signed in), a dialog box displays the badge image and corresponding information with sharing options.</li></ol><ul><li><strong>Share an update </strong>— This will post the badge to your LinkedIn feed. You can include optional content with the badge in the form of an update. This might include providing more context around the badge award or personal commentary. You may optionally share your update with the Public or Connections, as well as posting an update to Twitter.</li><li><strong>Send to individuals </strong>— A badge image and link to the public badge assertion page is shared as a private message.</li></ul><figure><img alt="" src="https://cdn-images-1.medium.com/max/476/0*unbKy7Q0c3CjJMgL" /></figure><h3>Adding badges to your LinkedIn Certifications</h3><p>You can also add badges to the Certification section of your LinkedIn profile. One advantage to using this approach is that the badge is persistently associated with your LinkedIn profile and does not get “lost in the feed”. Adding badges to the Certification section requires some manual entry of badge information.</p><ol><li>Sign in to LinkedIn and go to your profile page.</li><li>Select the <strong>Add profile section</strong> button and select Licenses and Certifications.</li></ol><figure><img alt="" src="https://cdn-images-1.medium.com/max/806/0*KLIY9eCz3lBtHJdN" /></figure><ol><li>A new dialog box will open prompting you to enter information about your badge award.</li><li>From your Badgr Backpack, copy the share URL of the badge you wish to add.</li><li>Paste the badge share URL into the Certification URL field of the LinkedIn certification dialog box.</li></ol><figure><img alt="" src="https://cdn-images-1.medium.com/max/625/0*5DsebRiWqblJyux0" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/743/0*nAHjBDEReRgXIVpa" /></figure><ul><li><strong>Name</strong>: Enter the title of the badge.</li><li><strong>Issuing Organization</strong>: Enter the name of the badge issuer and/or organization. LinkedIn may suggest an organization with which you may align your badge award. Please note: LinkedIn displays the Organization’s logo for this entry. It is not possible to display the badge image here due to LinkedIn’s posting restrictions.</li><li><em>​</em><strong>Expiration</strong>: Check the box if the badge award does not expire.</li><li><strong>Issue Date and Expiration Date</strong>: Enter the date(s) as they appear on the badge.</li><li><strong>Credential ID</strong>: Leave blank or paste the unique ID string from the badge share URL. It is typically the last string after “/” and looks like this: <em>bcd41b91-a83f-4dae-a51f-cd979a6cc8b8</em></li><li><strong>Credential URL</strong>: Paste the share URL of the badge award here.</li></ul><ol><li>Click <em>Save.</em></li><li>From your LinkedIn profile, navigate to the <strong>Licenses &amp; Certifications </strong>section to view your badges.</li></ol><h3>That’s it! You now have your Skill Badges displayed on your LinkedIn profile, ready for employers to review!</h3><p><em>Source: </em><a href="https://support.badgr.com/portal/kb/articles/sharing-badges-on-social-media"><em>Badgr Support: Sharing badges on social media</em></a></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=2cddb05e0aa7" width="1" height="1" alt=""><hr><p><a href="https://medium.com/becode/sharing-open-badges-on-linkedin-2cddb05e0aa7">Sharing Open Badges on LinkedIn</a> was originally published in <a href="https://medium.com/becode">BeCode</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Meet the BeCoders : Arnaud.]]></title>
            <link>https://medium.com/becode/meet-the-becoders-arnaud-bfedec31e78f?source=rss----7a2ed1815ac9---4</link>
            <guid isPermaLink="false">https://medium.com/p/bfedec31e78f</guid>
            <category><![CDATA[startup]]></category>
            <dc:creator><![CDATA[Marketing BeCode]]></dc:creator>
            <pubDate>Mon, 25 Nov 2019 09:37:20 GMT</pubDate>
            <atom:updated>2019-11-25T09:37:20.498Z</atom:updated>
            <content:encoded><![CDATA[<h3>Meet the BeCoders : Arnaud.</h3><p>In each newsletter issue, we’ll give you the chance to meet one of the many people who make BeCode what it is.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*XmChOJsezOA-uF-e.png" /></figure><p>This time, we’d like you to meet Arnaud, who first joined BeCode as a learner back in 2018 after a first career at Caterpillar Logistics. Today, Arnaud is one of our amazing Charleroi coaches.</p><p>Here is his full interview :</p><p><strong>Tom Crohin (T.C.) </strong>: <strong>Hi Arnaud ! Could you tell us a bit about your background?</strong></p><p><strong>Arnaud </strong>: <em>I joined BeCode back in January 2018, first as a learner. Back then, I had just lost my job after the closure of Caterpillar Logistic, where I’d worked for more than 7 years, holding different positions, from production management to analysis of customers needs.</em></p><p><em>Afterwards, I was part of the Caterpillar conversion unit and decided to take a new direction. Since I was attracted to the web sector and had some knowledge in programming, I decided to go for a web development training and thanks to one of my relatives, I discovered BeCode.</em></p><p><strong>T.C. : How was your experience as a learner at BeCode?</strong></p><p><strong>Arnaud </strong><em>: After joining the training, I quickly adapted to the rhythm and it made me very happy to find myself in an environment that perfectly fitted me and that used a methodology and pedagogy that matched my vision and my previous professional experiences.</em></p><p><em>During my training, I had the opportunity to learn technologies I really enjoyed working with and I was never stopped in my progression. I was able to work with talented people who had the same aspirations and I got to share my experience and skills through different projects we collaborated on.</em></p><p><em>At the end of my training, I was offered to join the BeCode team, and I didn’t think twice about it. I first joined the team as a developer and assistant coach, and then became main coach.</em></p><p><strong>T.C. : Sweet! What made you want to join the BeCode team?</strong></p><p><strong>Arnaud<em> </em></strong><em>: The main factor for my decision was that BeCode places human beings at the center of its project. For the first time in my career, I had the opportunity to work in a social context in which the emphasis is put on people and where the main goal wasn’t a race for profits.</em></p><p><em>Another reason for joining BeCode was the global approach in which I feel complete, as far as the pedagogy, the communication and the long-term vision. BeCode was, for me, the ideal company.</em></p><p><em>Finally, the function in itself and the challenge it implies made me want to join BeCode. Every day is different and brings new challenges. That seems like a detail, but I hate routine and BeCode offered me the perfect playground to blossom.</em></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*3Z450mpNm6cqS_-A.jpeg" /></figure><p>Then-learner Arnaud attending the 2018 ING Breaking Habits hackathon</p><p><strong>T.C. : Indeed, there’s no such thing as “routine” at BeCode. As a coach, what’s your drive everyday?</strong></p><p><strong>Arnaud </strong>: <em>The first motivation is the daily challenge. As a coach, every single day is different from the other. We are always solving problems and looking for solutions : our job is a constant challenge, which is very rewarding.</em></p><p><em>Witnessing the learners evolve everyday is another important point. At BeCode, we have very different profiles and it’s a huge satisfaction for me to see these people blossom. Between the selections phase and the internship, their transformation is incredible. It’s very enriching to be part of this change.</em></p><p><em>Finally, sharing is a value I highly appreciate, both as a learner and as a coach. At BeCode, sharing knowledge is very important and I keep learning everyday thanks to my colleagues, my learners and the partners we work with on a daily basis. This synergy is essential for the group, but also teaches you a lot from a personal point of view.</em></p><p><strong>T.C. : One last question for you Arnaud, what have you learned about yourself since you’ve been part of the BeCode family?</strong></p><p><strong>Arnaud </strong>: <em>Thanks to this experience, I know myself better but I also discovered who I was not. BeCode allowed me to give a meaning to my professional future and to redefine the values and motivations that get me going everyday.</em></p><p><strong>T.C. : <em>Thank you Arnaud.</em></strong></p><p>In the next issue, you will meet Chrysanthi, our AI coach, with an exclusive interview!</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=bfedec31e78f" width="1" height="1" alt=""><hr><p><a href="https://medium.com/becode/meet-the-becoders-arnaud-bfedec31e78f">Meet the BeCoders : Arnaud.</a> was originally published in <a href="https://medium.com/becode">BeCode</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Why project-based learning is the BEST [Web Development]]]></title>
            <link>https://medium.com/becode/why-project-based-learning-is-the-best-web-development-4ad0236e0d?source=rss----7a2ed1815ac9---4</link>
            <guid isPermaLink="false">https://medium.com/p/4ad0236e0d</guid>
            <category><![CDATA[learning]]></category>
            <category><![CDATA[web-development]]></category>
            <category><![CDATA[projects]]></category>
            <category><![CDATA[becode]]></category>
            <dc:creator><![CDATA[laly]]></dc:creator>
            <pubDate>Wed, 30 Oct 2019 15:44:52 GMT</pubDate>
            <atom:updated>2019-10-30T15:44:51.965Z</atom:updated>
            <content:encoded><![CDATA[<p>Want to know about what it is like to learn Web Development with a project-based approach? Curious about what it is like to learn new techs as a newbie to the world of the development of the Internet? This post could be for you. I am going through the first mini-PHP project for which we, learners from <a href="https://www.becode.org/">BeCode.org</a>, had to complete.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*MXXT4M6sezQEnhUi4KWWBg.png" /><figcaption>Fight-mode on.</figcaption></figure><p>The mission was to develop a PHP script, display a contact form and process the inputs. Some of the new technical instructions of the project were along the lines of: include a HoneyPot for spams, sanitise and validate the form on the server side. Okay.</p><p>What I knew about PHP is that it is a back-end language, so it is run on the server-side and not the client-side. So imagine my face when I tried to understand Docker. Abstract. We had 3 days to do this.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/500/1*8KVdFEHieZXu9zFQShgSrA.gif" /></figure><p>For info, when we have a project given by our ace coachs, we work on GitHub, so the instructions given about projects are located on a nice README.md file.</p><h4>So what’s happening while creating this little project? <strong>LOTS.</strong></h4><p>There are so many new things to get that I spend a lot of my time researching + trying to understand how one tech/tool works and how it relates to other techs. Each time I understand a bit of something, I have another question popping up in my head. I talk with other learners about what they know about a tech/tool to grasp more of a concept. You guess it, I spend long hours getting information. I am blown away by what people invent with tech!</p><p>Tic-toc, bits of stress coming up, I realize I have to start planning the project. I have to begin even if I don’t understand everything and even if I am not sure where to start. Hello deadline.</p><p>I active my <strong>Fight-Mode On.</strong></p><p>Step one is designing the form’s mock-up, but, how to do that? It needs to be professional. I’m not a drawing artist, no paper and pen for me. I want to use a software which will make a pretty mock-up, so, there I am, learning how to use Figma on the go. Great!</p><p>I use Bootstrap and spend time styling the form + I’m a bit frustrated after spending an afternoon fighting to display the elements correctly :)</p><p>Cute dead-line reminding me I have to start attacking the PHP part. We work in pairs with another learner. We hurry-up to do some research on our own and test what we’re finding. Why is this sanitazation function not working? Trying to decrypt the PHP manual. By the end of the day there are elements in the script which don’t work still, but there is some progress. Motivated.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*qOpcZtT41NP8cDeKedx0Nw.png" /><figcaption>Made with Canva and Krita</figcaption></figure><p>Some hours left, my head is heavy. I find out I can’t deploy the site on GitHub. Nervous laugh. Long story short, I hear about Heroku. ANOTHER TOOL I need to understand? Fine. Site deployed.</p><p>Deadline is getting closer. Half an hour before I am supposed to finish, I realize I forgot to implement the honey-pot method. I turn pale and I want to throw my computer by the nearest window. I rush to finish.</p><h4><strong>It was challenging, but I learnt a lot</strong></h4><p>It was a messy process.</p><p>The task was like a massive knot, which I had to try to untie and understand. Not simple to be thrown that mess at filled with unknown. I wasn’t comfortable with being disoriented. Many times I was confused on how to do it, how to find my answers and where. I was trying to decide on which information was right for me in the ocean of the Internet.</p><p>I visited lots of websites in 3 days trying to look for answers, going through stack-over-flow posts dating from 2008, and tried decrypting manuals for techs which didn’t necessarily answer my questions. I had to find a way to do it, even if it was messy. I kept going through the same process which was Research, Find Info and Test.</p><p>I learnt things. Asking for help when I was stuck, managing myself and my time. Finishing up this mini-project built my confidence in my technical learning ability, which I will take on for the next project and that’s well satisfying.</p><p>I learnt being methodical about a task is key in delivering good projects. Having a clear plan for the design as well as the functionalities. If I approach it in the right way, it’s easier to build a pretty and functional end result.</p><p>It taught me about being okay in discomfort, and be like, this is challenging, but I can manage. Even if I go through roller-coaster brainfuc****g moments.</p><p>If I learnt all of the above quickly it is because I had lots of ??? on that mini-project with a dead-line, and perhaps this is an insight of what life will be when working as a developer?</p><p>No Problemo.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=4ad0236e0d" width="1" height="1" alt=""><hr><p><a href="https://medium.com/becode/why-project-based-learning-is-the-best-web-development-4ad0236e0d">Why project-based learning is the BEST [Web Development]</a> was originally published in <a href="https://medium.com/becode">BeCode</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Wanted : Head of Campus]]></title>
            <link>https://medium.com/becode/wanted-head-of-campus-8d8ae53de860?source=rss----7a2ed1815ac9---4</link>
            <guid isPermaLink="false">https://medium.com/p/8d8ae53de860</guid>
            <category><![CDATA[job-offer]]></category>
            <category><![CDATA[job-hunting]]></category>
            <category><![CDATA[jobs]]></category>
            <category><![CDATA[job-search]]></category>
            <dc:creator><![CDATA[Marketing BeCode]]></dc:creator>
            <pubDate>Thu, 12 Sep 2019 10:01:08 GMT</pubDate>
            <atom:updated>2019-09-20T10:01:54.779Z</atom:updated>
            <content:encoded><![CDATA[<h3>Wanted : Head of Campus</h3><p>BeCode is expanding its horizons. Do you want to be part of it?</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/800/0*gd6YVGNWvFqy5NYO" /></figure><h3>Our organisation</h3><p>At BeCode, our mission is to grow today’s talented youth &amp; professionals into tomorrow’s best developers. It’s a non-traditional school, that wishes to address the skills gap in an inclusive way. Opportunities and talents currently remain untapped due to a skills gap: the gap between what employers need and what job seekers are offering today. Whereas a large amount of digital job vacancies remains unfilled, a number that will increase dramatically in the years to come, most of these professions don’t require an engineering degree at all. With a logical mindset, a lot of motivation, a short but intensive training and the right attitude, anyone can learn to create mobile applications and websites and turn that into a profession!</p><p>Our first BeCode classes were launched early 2017 in the heart of Brussels and we expanded to Charleroi, Liège, Genk, Antwerp and Ghent since — with the intention to scale to at least 10 cities, training ca 1500 students per year, by 2020.</p><h3>Job Overview</h3><p>We have rolled out BeCode activities across multiple locations in a very lean and agile way. We are now looking to firmly root each campus into the local ecosystem, with the Head of Campus as the main liaison between the campus team and the companies in the area. As BeCode’s business model is mainly relying on business contributions for recruiting, training and reskilling/upskilling services, growing awareness and converting interest into business deals to ensure continuation will be the main responsibility of the Head of Campus.</p><p>The Head of Campus will also manage the end-to-end service delivery with the local team, i.e. from the recruitment of appropriate candidates to the employment of BeCode graduates. He/she will steer the local team into a qualitative performance, in line with the BeCode values, pedagogical framework and key processes and work closely with BeCode’s management team to keep innovating and improving the services.</p><p>We will recruit a Head of Campus for each regional hub:</p><ul><li>Flanders (Antwerp-Ghent-Genk)</li><li>Brussels</li><li>Wallonia (Charleroi-Liège)</li></ul><h3>Responsibilities and Duties</h3><p>Duties will include:</p><ul><li>People management: recruitment and onboarding of team members as well as day-to-day coaching &amp; management of the team, maximizing the team potential and outcome.</li><li>Business development: develop business partnerships in the area to both ensure economic return for the recruitment &amp; training services (and therefore financial sustainability) and a qualitative recruiting of candidates.</li><li>Operational management: safeguard financial sustainability, ensure quality of rendered services and compliance with BeCode’s values, Brand and communication guidelines, pedagogical framework and key processes.</li></ul><p>In order to be successful in this role, you will need to have a deep understanding of the sales &amp; marketing process and dynamics, and also superb interpersonal skills. Previous experience in business development and team management role are key advantages.</p><h3>Tasks</h3><p><strong>People management</strong></p><ol><li>Participate in the hiring of your local team members</li><li>Train, Guide and Coach the local team members</li><li>Manage conflicts in a constructive way</li><li>Evaluate team members</li></ol><p><strong>Business management</strong></p><ol><li>Present BeCode (business services) to a range of companies.</li><li>Visiting clients and potential clients to evaluate needs or promote products and services.</li><li>Identify high-potential prospects and develop a go-to-market strategy for those.</li><li>Secure internship positions for junior with companies that have an intent to hire and are willing to enter into one of the business partnerships BeCode is offering</li><li>Negotiate contracts with prospective clients.</li><li>Safe-guard qualitative delivery on all confirmed partnerships and maintain good relationships with customers &amp; partners.</li></ol><p><strong>Operational management</strong></p><ol><li>Coordinate the selection process to recruit local candidates in line with BeCode social mission and marketing strategy</li><li>Coordinate campus trainings schedule and requirements</li><li>Coordinate local trainings and ensuring conversion with the team.</li><li>Answer client questions based on input from the relevant team members.</li><li>Regular reporting to the CEO and management team.</li><li>Maintain client records &amp; reporting.</li><li>Ensure compliance with the law and company’s policies — including public procurement compliance in case of subsidized projects;</li></ol><h3>Reports To</h3><p>The Chief Executive Officer (CEO) and the management team</p><h3>As a member of BeCode you are expected to :</h3><ul><li>Be an excellent team player and support the others whenever you can</li><li>Entertain the solution mindset : each problem represents an opportunity</li><li>Contribute to our continuous desire to improve ourselves</li><li>Embrace BeCode values of social inclusion and fair treatment across gender, races, religions and all the differences that make us all humans</li><li>Act and behave professional at all times:</li><li>You are on time</li><li>You keep your promises</li><li>You communicate professionally</li><li>You are organized and structured</li><li>You organize your life around BeCode instead of the contrary</li></ul><h3>Skills</h3><p>You are passionate about IT, web development and our era of new frameworks and hybrid mobile development?</p><ul><li>A heart for social and preferably experience in a social enterprise context</li><li>Deep interest in coding and knowledge sharing</li><li>Commitment to continuous improvement</li><li>Entrepreneurial mindset and customer service orientation</li><li>Thorough knowledge of English &amp; French with minimal basic understanding of Dutch (Walloon region) or English &amp; Dutch with minimal basic understanding of French (Flemish region)</li><li>Demonstrated ability to lead and inspire</li><li>Outstanding communication and interpersonal skills</li><li>Flexibility</li><li>Ability to foster and cultivate business opportunities and partnerships</li><li>A Getting Things Done attitude</li><li>A solution mindset to embrace a fast-paced, rapidly changing environment.</li><li>Bonus: prior experience as a founder of a new school or venture; experience in business development and/or team management</li></ul><h3>Soft skills</h3><ul><li>Customer focus</li><li>Patience</li><li>Rigour</li><li>Team spirit (collaboration, communication)</li><li>Ability to learn and adapt</li><li>And above all, you want to help other people to (re)launch their career !</li></ul><h3>KPI</h3><ul><li>Developing a happy &amp; high-performing team</li><li>Conversion &amp; qualitative delivery on business partnerships</li><li>Financial sustainability of the campus</li><li>Stay true to the BeCode DNA</li></ul><p>Get in touch : <a href="/service/mailto:karen@becode.org">karen@becode.org</a></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=8d8ae53de860" width="1" height="1" alt=""><hr><p><a href="https://medium.com/becode/wanted-head-of-campus-8d8ae53de860">Wanted : Head of Campus</a> was originally published in <a href="https://medium.com/becode">BeCode</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Collecting squares together!]]></title>
            <link>https://medium.com/becode/collecting-squares-together-cc3177a65c86?source=rss----7a2ed1815ac9---4</link>
            <guid isPermaLink="false">https://medium.com/p/cc3177a65c86</guid>
            <category><![CDATA[github]]></category>
            <category><![CDATA[sveltejs]]></category>
            <category><![CDATA[graphql]]></category>
            <dc:creator><![CDATA[Leny]]></dc:creator>
            <pubDate>Tue, 23 Jul 2019 09:00:25 GMT</pubDate>
            <atom:updated>2019-07-23T09:00:24.943Z</atom:updated>
            <content:encoded><![CDATA[<h3>🔹 Collecting squares together!</h3><h4>Mining, assembling, formatting.</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*MEqjSzgE4eKVP1L9730mHg.jpeg" /><figcaption>Photo by <a href="https://unsplash.com/@loic?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">Djim Loic</a> on <a href="https://unsplash.com/?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">Unsplash</a></figcaption></figure><p>I love <em>gamification</em>. Really. Collecting achievement just for the sake of it, as any rpg-player.<br>It’s why I really love the <em>green squares</em> off the <em>contribution graph</em> on GitHub profiles.</p><iframe src="https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fwww.youtube.com%2Fembed%2FpGFGD5pj03M&amp;url=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DpGFGD5pj03M&amp;image=http%3A%2F%2Fi.ytimg.com%2Fvi%2FpGFGD5pj03M%2Fhqdefault.jpg&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;type=text%2Fhtml&amp;schema=youtube" width="854" height="480" frameborder="0" scrolling="no"><a href="https://medium.com/media/e7de5e6c11309befee11ef6f8e459a2f/href">https://medium.com/media/e7de5e6c11309befee11ef6f8e459a2f/href</a></iframe><p>But the green squares are personal by essence: it’s your commits, your activity on GitHub. There’s no data for teams or organisation.<br>At <a href="https://becode.org/">BeCode</a>, we work as a team, we live as a team. Everything we do, we do as a team!</p><p>It’s why I wanted to create a <em>contribution graph</em> with informations of all the <em>BeCodians</em>.</p><p>Using green squares felt a big <em>wrong</em>, so I use the blue tones of BeCode’s identity, and created <a href="https://kareble.becode.xyz/"><strong>Kareble</strong></a>.</p><h3>Fetching the data</h3><p>I already known about the <a href="https://developer.github.com/v4/"><strong>GraphQL API</strong></a> of GitHub (did I tell you that I really love <a href="https://graphql.org/">GraphQL</a>? I love GraphQL. So much. For real. It’s the future, deal with it).</p><p>But unfortunately, the information are deeply hidden in all the data that GitHub serves. And fetching all the data I needed is <em>very slow</em>, so I can’t do it in real time.<br>The idea is to create a script to fetch the data, and running it <em>once a week</em>.</p><p>After some tests, I ended with this graphql query:</p><iframe src="" width="0" height="0" frameborder="0" scrolling="no"><a href="https://medium.com/media/a2ab8c7a11b6eefe57d6d4c44283cc55/href">https://medium.com/media/a2ab8c7a11b6eefe57d6d4c44283cc55/href</a></iframe><p>It gives me all the contributions from the last year, by weeks, for 25 users of our organization. Then, I created a <a href="https://github.com/becodeorg/kareble/blob/master/scripts/fetch-data.js">small script</a> to fetch the data of all our users, 25 at a time.<br>The script also assemble and clean the data, then set the color of each day, regarding of the quantity of contributions.<br>It finally writes all the data in a JSON that will be used by our website.</p><p>At the time of the redaction (july 2019), the script fetches the data in 25 batches of 25 users, performing all its tasks in 1min 48s.</p><h3>Displaying the data</h3><p>For this little project, I wanted to change my habits.<br>I could have done it with <strong>React</strong> or <strong>VueJS</strong>, but I wanted to use this project as a good pretext to test and discover something I never used before.</p><p>My choice went on <a href="https://svelte.dev/">Svelte</a>. The version 3 was quite new when I started working on kareble and some podcasters I listen made very <a href="https://shoptalkshow.com/episodes/349/">enthusiastic</a> <a href="https://spec.fm/podcasts/toolsday/293076">episodes</a> about it.</p><p>Svelte is a very great tool, similar to React or VueJS (working with components), but also quite different - the creator of Svelte describe it as a <em>disappearing framework</em>: when compiled, the code doesn’t need to include a runtime like React or Vue.<br>Svelte is also constructed around HTML: you defined components by their markup (svelte components are like small HTML fragments), and a small chunk of scripts to operate with them.</p><p>Svelte is really fast and easy to use, and for small projects, it’s a very good surprise.</p><iframe src="https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fgiphy.com%2Fembed%2Fl46ChKeGsmsfE3Un6%2Ftwitter%2Fiframe&amp;url=https%3A%2F%2Fmedia.giphy.com%2Fmedia%2Fl46ChKeGsmsfE3Un6%2Fsource.gif&amp;image=https%3A%2F%2Fi.giphy.com%2Fmedia%2Fl46ChKeGsmsfE3Un6%2Fgiphy.gif&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;type=text%2Fhtml&amp;schema=giphy" width="435" height="326" frameborder="0" scrolling="no"><a href="https://medium.com/media/754f1bd577400ffbb6e3cf83b937776a/href">https://medium.com/media/754f1bd577400ffbb6e3cf83b937776a/href</a></iframe><p>The coding part was really straightforward, you can dig around the code <a href="https://github.com/becodeorg/kareble">on the repository</a>.<br>If you’ve already played with a modern front-end framework like React, you’ll see that Svelte is really easy to understand.</p><h3>Build &amp; deploy</h3><p>Compiling Svelte is really easy, thanks to <a href="http://rollupjs.org/">rollup</a>.</p><p>To host and deploy, since we can’t fetch the data in real time, we can host the website on any static platform, like <strong>netlify</strong> or <strong>github-pages</strong>. For Kareble, I use github-pages.</p><p>The only <em>missing</em> part is a bit of <strong>automation</strong> - for now, I need to run three commands each week to deploy the site.<br>There’s many tools for that, but not free. I really want to use <a href="https://github.com/features/actions"><strong>GitHub Actions</strong></a>, an upcoming tool by GitHub, currently in beta, which will be able to do all I need for this project.</p><p>In the meantime, those three commands to run are my <em>morning routine</em> for each sunday 😋</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=cc3177a65c86" width="1" height="1" alt=""><hr><p><a href="https://medium.com/becode/collecting-squares-together-cc3177a65c86">Collecting squares together!</a> was originally published in <a href="https://medium.com/becode">BeCode</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[ Env vars, tokens and good practices…]]></title>
            <link>https://medium.com/becode/env-vars-tokens-and-good-practices-aad97101a31c?source=rss----7a2ed1815ac9---4</link>
            <guid isPermaLink="false">https://medium.com/p/aad97101a31c</guid>
            <category><![CDATA[secrets]]></category>
            <category><![CDATA[dev]]></category>
            <category><![CDATA[api]]></category>
            <category><![CDATA[token]]></category>
            <dc:creator><![CDATA[Leny]]></dc:creator>
            <pubDate>Mon, 01 Jul 2019 12:59:17 GMT</pubDate>
            <atom:updated>2019-07-01T13:03:27.017Z</atom:updated>
            <content:encoded><![CDATA[<p>It’s a fact, as developers, we making great usage of <em>secrets</em>. API tokens, database passwords, configuration parameters, and many more.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*bNXslQsg8CYCyD5-1MkK5A.jpeg" /><figcaption>Photo by <a href="https://unsplash.com/@usinglight?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">Stefan Steinbauer</a> on <a href="https://unsplash.com/?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">Unsplash</a></figcaption></figure><p>Manipulating secrets can be tricky, but, using your common sense, you will avoid critical issues.</p><p>👉 <strong>NOTE: </strong>Some of the following advices will seems obvious, but, hey, it’s never useless to repeat these kind of things</p><h3>Never commit secrets!</h3><p>Yeah, <em>it’s obvious as f***</em>, but by accident or ignorance, sometimes secrets are committed into git repositories… worse, into <em>public</em> repositories!</p><blockquote>Note that the only <em>acceptable</em> exception is to commit development-scoped tokens, which are completely useless outside your local env…</blockquote><p>Luckily, the most used services, like GitHub or Google, have robots that scans repositories, detect secrets and can warn you about those leaks, and often disable associated keys and tokens to avoid major issues.</p><p>Which leads to the next advice…</p><h3>Don’t reuse tokens!</h3><blockquote>“Once exposed, a secret loses all its power.”</blockquote><p>If your app/website/anything use another service to handle authentication, get datas or even share stuffs, you probably use <em>tokens</em> or <em>API keys</em>.<em><br></em>These tokens <strong>must</strong> be unique to your app and your environment (different tokens for <em>dev</em> and <em>production</em>, for instance).</p><p>If you reuse a token on different contexts, if one of these is compromise, there’s a big chance that the token will be disabled ASAP by an automatic script and/or a colleague/angry sysadmin.</p><p>And, as you may guess, every other service using the token will suffer from errors (at best) or even stop working (at worse).</p><h3>Use librairies to handle secrets.</h3><p>There’s many ways to handle secrets easily and without pain, like the <strong>dotenv</strong> library (which exists <a href="https://github.com/motdotla/dotenv">for</a> <a href="https://github.com/bkeepers/dotenv">various</a> <a href="https://pypi.org/project/python-dotenv/">languages</a>).</p><iframe src="https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fgiphy.com%2Fembed%2FHS4SrgzHpnZwk%2Ftwitter%2Fiframe&amp;url=https%3A%2F%2Fgiphy.com%2Fgifs%2Fanimated-see-HS4SrgzHpnZwk&amp;image=https%3A%2F%2Fmedia.giphy.com%2Fmedia%2FHS4SrgzHpnZwk%2Fgiphy.gif&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;type=text%2Fhtml&amp;schema=giphy" width="435" height="327" frameborder="0" scrolling="no"><a href="https://medium.com/media/a9e70387bca62b47d84dee6b390599cd/href">https://medium.com/media/a9e70387bca62b47d84dee6b390599cd/href</a></iframe><p>You can also let your environments keep your secrets… secret.</p><p>Most hosting/deploy solution have their ways to handle secrets, like <em>AWS Secret Manager</em>, <em>GitHub Actions’ secrets</em>, <em>HashiCorp Vault</em>, etc.</p><p>Everytime’s a secret leaks, a sysadmin have a stroke somewhere.<br>Take care of your sysadmins… take care of your secrets.</p><h4>So, okay, I messed up… what can I do?</h4><p>It’s not a good thing to do, but with git, you can <em>rewrite</em> history, to make things disappear in all your commits, as it never happens.</p><p>It’s tricky and not easy, but there’s a great tool to do it: <a href="https://rtyley.github.io/bfg-repo-cleaner/">BFG Repo-Cleaner</a>.<br>You’re welcome.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=aad97101a31c" width="1" height="1" alt=""><hr><p><a href="https://medium.com/becode/env-vars-tokens-and-good-practices-aad97101a31c">🔑 Env vars, tokens and good practices…</a> was originally published in <a href="https://medium.com/becode">BeCode</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[ Introducing Oto, the man in the middle.]]></title>
            <link>https://medium.com/becode/introducing-oto-the-man-in-the-middle-581311962a6d?source=rss----7a2ed1815ac9---4</link>
            <guid isPermaLink="false">https://medium.com/p/581311962a6d</guid>
            <category><![CDATA[becode]]></category>
            <category><![CDATA[oauth2]]></category>
            <category><![CDATA[aws]]></category>
            <dc:creator><![CDATA[Leny]]></dc:creator>
            <pubDate>Tue, 11 Jun 2019 08:18:47 GMT</pubDate>
            <atom:updated>2019-06-11T08:18:47.465Z</atom:updated>
            <content:encoded><![CDATA[<h4>A story about OAuth 2, and a tool to use it on static, client-side apps.</h4><p>As a developer, I love to use APIs. <br>Moreover, I love to use others’ APIs, and integrate them in my apps. <br>Like getting stuffs from GitHub, LinkedIN, allowing my users to see <em>their</em> data in my tools.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*YjCyOzm7J0v66cifXcBeGw.jpeg" /><figcaption>Photo by <a href="https://unsplash.com/@ayosake?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">David Sinclair</a> on <a href="https://unsplash.com/?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">Unsplash</a></figcaption></figure><p>But I don’t want to ask my users their credentials for these services (and they wouldn’t probably give them!).<br>So, I have to use the <strong>OAuth 2</strong> protocol.</p><p><strong>OAuth 2</strong> is a tool used by services to allow third-party apps’ developers (like me! I’m a third-party developer! <em>Woot!</em>) to access the services’ data of users, with their approval.</p><p>I will not describe OAuth 2 in depth, but here’s the big picture: when you create an app, you need to register it on the service you want to use the API.<br>They will give you two important things: a <em>public access id</em>, which is not secret and can be stored in your code ; and a <em>private access key</em>, which is, huh, secret, and can’t be shared.<br>When one of your user needs to use the API in your app, they will be redirected on a login page <em>outside your site</em>, on the original service (the login page of GitHub, for instance). The user log himself, and the service redirect him on your app, with a <em>unique code</em>.<br>Then, your app will contact the service, with the <em>unique code</em>, your <em>public access id</em> and your <em>private access key</em>. The service know that everything’s okay, and will respond you with a <em>token</em>, that you will use for any request to the API.</p><p>And that’s all. It sounds complicated, but it’s quite easy.</p><p>But there’s a small problem: OAuth 2 is not really designed to be used on <em>client-side only</em> apps, like PWA.<br>As I said, the <em>private access key</em> needs to stay private.</p><p>So… we need a server. But we don’t really <em>want</em> one, since we would like to have static apps. <br>That’s a tough one.</p><p>But what if I told you we can have a server… <em>without</em> a server?<br>We can use a <em>serverless platform</em>, like <strong>AWS Lambda</strong>: it’s basically a simple piece of code (a function), bound to an URL, that will be executed when the URL is touched. Simple as <em>f*%</em>.</p><p>And then, we can have a small piece of code that will know our <em>private access key</em> for OAuth 2, and will make the last step of the challenge.<br>Let me introduce you <a href="https://github.com/becodeorg/oto">oto</a>, the man in the middle, the little piece of code to run that.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*yHeyjgb8CcLUDUtFFITB8Q.jpeg" /><figcaption>Photo by <a href="https://unsplash.com/@chrispanas?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">chris panas</a> on <a href="https://unsplash.com/search/photos/lock?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">Unsplash</a></figcaption></figure><p>For now, it only supports GitHub, but I will add more services in the future.<br>You can run it locally, or simple use the <a href="https://serverless.com/">serverless framework</a> to deploy it on your AWS account.<br>And, last but not least, its able to handle multiple services and keys at once, simplifying your workflow!</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=581311962a6d" width="1" height="1" alt=""><hr><p><a href="https://medium.com/becode/introducing-oto-the-man-in-the-middle-581311962a6d">🤓 Introducing Oto, the man in the middle.</a> was originally published in <a href="https://medium.com/becode">BeCode</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
    </channel>
</rss>