<?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: Ada Nduka Oyom</title>
    <description>The latest articles on DEV Community by Ada Nduka Oyom (@kolokodess).</description>
    <link>https://dev.to/kolokodess</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%2F25587%2F53bfe7dc-4cec-4948-a8e2-5c134f546b6f.jpg</url>
      <title>DEV Community: Ada Nduka Oyom</title>
      <link>https://dev.to/kolokodess</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/kolokodess"/>
    <language>en</language>
    <item>
      <title>Building A Developer Community</title>
      <dc:creator>Ada Nduka Oyom</dc:creator>
      <pubDate>Fri, 11 May 2018 17:26:55 +0000</pubDate>
      <link>https://dev.to/kolokodess/building-a-developer-community-58a7</link>
      <guid>https://dev.to/kolokodess/building-a-developer-community-58a7</guid>
      <description>&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%2Fcdn-images-1.medium.com%2Fmax%2F800%2F1%2A5x3QDSNlMFAPyYWZ25JmcA.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%2Fcdn-images-1.medium.com%2Fmax%2F800%2F1%2A5x3QDSNlMFAPyYWZ25JmcA.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Being a Software developer and doubling as a Community relations manger has helped me realize the major effect developer communities have, they have proven to form the binding part of growth to companies or organizations scattered across the technology industry. Their passion and innovative spirit make them the ultimate growth hack for products, this has been seen with top global companies like Facebook, Google etc leveraging on their developer communities to become the very best at what they do.&lt;/p&gt;

&lt;p&gt;Developer communities are a fast expanding one and can include everyone in technology from Senior software engineers to the high school student trying his/her hands on a new technology. Their uniqueness and creative approach to working with a technology make developer-users entirely different from other users as they tend to not work/use a product solely for the money but as a result of being passionate and enthusiastic about their craft. This reason has seen lots of tech organizations investing heavily in their developer communities.&lt;/p&gt;

&lt;p&gt;Building a developer community never comes off as easy as it looks, developers like to be approached differently from the usual marketing tactics used to approach a new user, they love to be seen as an integral key of the product and as such can be quite a hard one to attract if the key steps are not carried out.&lt;/p&gt;

&lt;p&gt;Here are a few guide steps i work with to help in building one:&lt;/p&gt;

&lt;h4&gt;
  
  
  Find and Define your Audience:
&lt;/h4&gt;

&lt;p&gt;Developers cut across all sub-fields in technology and which can range from web development, mobile development, desktop application development, Game development, Data science, Artificial intelligence, Machine learning, Robotics, etc. With the vast fields, it’s always advised to take a closer look on the goals and benefits your developers would gain from joining, doing this helps a great deal in filtering out.&lt;/p&gt;

&lt;p&gt;For example: At &lt;a href="http://www.findworka.com" rel="noopener noreferrer"&gt;Findworka&lt;/a&gt;, we specialize in building and working with web and mobile products so we do well to focus on onboarding PRO Developers with careers or interests in web and mobile development to our &lt;a href="http://www.findworka.com/pros" rel="noopener noreferrer"&gt;Findworka PRO platform&lt;/a&gt;. Doing this saves you some mileage and helps to easily communicate, interact and ultimately engage with your developers.&lt;/p&gt;

&lt;h4&gt;
  
  
  Create an Onboarding Process:
&lt;/h4&gt;

&lt;p&gt;How you bring on developers to your platform go a long way to either have a long term or short term staying effect of them in your community. Your Onboarding process gives you the control to help reduce the common, obstacles and issues developers would come across when getting started with your product.&lt;/p&gt;

&lt;p&gt;Your on-boarding process can also be seen as your way of creating a first impression with the developer about your product or community. A lot of companies do this through their product documentation, which aims to explain all that the developer should know about working with the product, some study focused communities do this by organizing beginner friendly meetups to get the developers acquainted with their goals and aims of the study group. Onboarding processes that have proven to have more lasting effects on the developers tend to include case studies of other developers either working with the product or who’s made some achievements after joining the community.&lt;/p&gt;

&lt;h4&gt;
  
  
  Measure Metrics:
&lt;/h4&gt;

&lt;p&gt;Metrics go a long way in helping you understand a lot about your developer members, where and how they got redirected to your platform and their activities on your platform.&lt;/p&gt;

&lt;p&gt;Simple Metrics such as checking for engagement level on your community chat group(s), number of followers on social media, member interests in particular topics or languages, interest in certain products or technology etc do a lot of trick in harnessing the potentials and growth of your community.&lt;/p&gt;

&lt;h4&gt;
  
  
  Build Leaders:
&lt;/h4&gt;

&lt;p&gt;Getting specific members to play lead roles helps keep the community more focused and together, smaller roles such as team leads, group leads, admins, ambassadors or higher roles such as developer advocates, developer community managers etc drives in more confidence and creates more trust into the rest of the developers as these leaders tend to understand their needs more and can relate to their technical situations.&lt;/p&gt;

&lt;p&gt;In building a developer community, here are a few characteristics that indicate growth:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Originality&lt;/strong&gt;  : The mistake many make is not realizing soon enough that developers fall under the Products department and not the marketing or sales department, which tells off as the reason to why lots of sale and marketing tactics tend not be quite effective on them. As stated earlier, developers like to be considered an integral part of a product and can easily see through all the marketing tactics, they love when companies or organization stay true to their words and contents and at the end deliver what was promised or even more. Be transparent with a goal of adding more value to their productivity while avoiding spams.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Visibility&lt;/strong&gt; : Putting more word out there about your community or organization creates more trust and grows membership, getting your developer advocates or community managers represent the community at developer focused events not only builds a good relationship but also signifies that your community or organization is always accessible, remember developers do not respond to traditional marketing tactics from a sales representative so tend to feel more at home engaging with a representative who comes from a technical background and isn’t just focused on shoving in the organization’s products in their face but also willing to discuss and analyse other products and developer tools that sometimes prove a bigger competition but with the sole aim of educating and adding value to them.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;High Priority on Feedback&lt;/strong&gt; : A great way to know what initiatives or actions work and do not work in your community is to take in feedback as they help your community or product iterate faster, communities dwell a lot of member-feedback as they are their sole priority for starting one at the first place, issue tracking, feature requests or Q&amp;amp;A are some example method of getting feedback. Putting in considerable actions to issues or suggestions gotten from feedback imbibes more trust in your members as that helps them realize their opinions are considered important.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Great Metrics&lt;/strong&gt; : Increase in metrics largely indicates growth and shows the right steps are being taken.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Rewards or Incentives:&lt;/strong&gt; Giving out incentives or rewards such as swag packs, t-shirts, free skill acquisition, scholarships etc as benefits at different occasions encourage members to participate and engage more, a lot of developers also join certain communities as a result of the incentives and rewards gotten from the community, who doesn’t like freebies and goodies ?&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Looking to start building one already or improve an existing one, here are a few essentials i prioritize that you might want to take note of:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Starter pack&lt;/strong&gt;  : For a community just starting out, having the following helps create the connection needed between members and community owner(s) at the initial/beginning phase&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Newsletter (helps with passing information about new initiatives, current trends etc)&lt;/li&gt;
&lt;li&gt;Code of conduct&lt;/li&gt;
&lt;li&gt;Chat platform (for easier communication)&lt;/li&gt;
&lt;li&gt;Support system (some communities combine this with the chat platform, but having this helps in difficult moments encountered by a new member)&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Budding pack&lt;/strong&gt;  : For an already existing community with only a few months or years at it:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Blog : to put up technical articles that explain various technical concepts about your products or several technologies either by staff writers or guest contributors from the community&lt;/li&gt;
&lt;li&gt;Integrate Feedback system&lt;/li&gt;
&lt;li&gt;Onboard community experts : Developer advocates/ Developer community manager etc&lt;/li&gt;
&lt;li&gt;Go Advanced: Create more advanced technical concepts in form of tutorials, hackathons, demo etc&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Master Pack&lt;/strong&gt; :For existing communities with member rates bursting the surge:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Conferences :Get to host your own developer focused conference.&lt;/li&gt;
&lt;/ol&gt;

&lt;h4&gt;
  
  
  Conclusion:
&lt;/h4&gt;

&lt;p&gt;Developer communities can be quite exciting! they could be the sole reason for someone taking up coding, they could be the reason behind the success of a startup or the reason as to why a developer enjoys his or her job. They promote connection and interactivity among members and help bridge gaps.&lt;/p&gt;

&lt;p&gt;Building a developer community requires patience but can also be a fun journey if you’ve got the passion and are willing to find happiness while doing it.&lt;/p&gt;




</description>
      <category>community</category>
      <category>softwaredeveloper</category>
      <category>developerrelations</category>
      <category>technology</category>
    </item>
    <item>
      <title>A Peek into Github’s Learning Lab</title>
      <dc:creator>Ada Nduka Oyom</dc:creator>
      <pubDate>Wed, 25 Apr 2018 15:27:29 +0000</pubDate>
      <link>https://dev.to/kolokodess/a-peek-into-githubs-learning-lab-31e</link>
      <guid>https://dev.to/kolokodess/a-peek-into-githubs-learning-lab-31e</guid>
      <description>&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%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AZ16CjNHE7dV_WVT82_GtbQ.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%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AZ16CjNHE7dV_WVT82_GtbQ.png"&gt;&lt;/a&gt;lab.github.com&lt;/p&gt;

&lt;p&gt;The team at Github recently pushed out an interactive guide to help developers master the art of using Git and getting more familiar to working around Github. Their goal is to &lt;strong&gt;“&lt;em&gt;help new developers retain more information and ramp up quickly as they begin their software journeys”.&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The broad difference between the platform and every other tutorial or webcast that explores “Git and Github” is that it allows for &lt;strong&gt;&lt;em&gt;User interaction&lt;/em&gt;&lt;/strong&gt; ; where a bot walks you through series of fun practical labs giving feedback along the way all without having to leave the platform&lt;/p&gt;

&lt;h3&gt;
  
  
  Here’s How It Works:
&lt;/h3&gt;

&lt;p&gt;The following are treated as separate courses in the Lab:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Introduction to GitHub&lt;/strong&gt; : Here an introduction to the most common, collaborative workflow for developers around the globe is done.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Communicating using Markdown&lt;/strong&gt; : Users get to learn how to write documentations on GitHub and beyond with Markdown’s simple syntax.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;GitHub Pages&lt;/strong&gt; : Users are taught on how to host a website or blog directly from your GitHub repository.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Moving your project to GitHub&lt;/strong&gt; : Get tips for migrating your code and contributors to GitHub.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Managing merge conflicts&lt;/strong&gt; : Users get to learn why merge conflicts happen and how to fix them.&lt;/li&gt;
&lt;/ol&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%2Frbad239klgw5ndjyiq01.gif" 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%2Frbad239klgw5ndjyiq01.gif"&gt;&lt;/a&gt;Sneak peek! Gif credit: Github Learning Lab&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Getting Started&lt;/strong&gt;:
&lt;/h3&gt;

&lt;p&gt;If you are totally new to Github, or looking to improve on your skills, this is a good shot, visit the learning lab &lt;a href="http://lab.github.com" rel="noopener noreferrer"&gt;&lt;strong&gt;here&lt;/strong&gt;&lt;/a&gt; &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Upon start, a few account authorization steps are taken by the user to give Github learning lab install access to all of your repositories in your personal account (i.e automatically create a repository when starting a new course). You can choose to authorize access to all repositories, or grant it access to a single repository.&lt;/li&gt;
&lt;li&gt;When a new course is selected, permission is also requested from the user to install Github learning lab on the repository automatically created while registering for the course.The repository created is where you get to work with Learning Lab in issues and pull requests.&lt;/li&gt;
&lt;li&gt;Upon installation on selected repository, an automatic mail subscription is done hence commencing the series of tasks accompanied with the course.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Excited to try out Github Learning Lab or tried it out already? Let me know your thoughts on it!&lt;/p&gt;




</description>
      <category>softwaredevelopment</category>
      <category>github</category>
      <category>versioncontrol</category>
      <category>opensource</category>
    </item>
    <item>
      <title>On Becoming a Technical Writer</title>
      <dc:creator>Ada Nduka Oyom</dc:creator>
      <pubDate>Fri, 20 Apr 2018 15:00:00 +0000</pubDate>
      <link>https://dev.to/kolokodess/on-becoming-a-technical-writer-318e</link>
      <guid>https://dev.to/kolokodess/on-becoming-a-technical-writer-318e</guid>
      <description>&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%2Fcdn-images-1.medium.com%2Fmax%2F810%2F1%2AXkivhje3fsyI1XEKUokA9w.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%2Fcdn-images-1.medium.com%2Fmax%2F810%2F1%2AXkivhje3fsyI1XEKUokA9w.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;One of my many role models once said, the reason as to which she started out into technical writing was as a way for her to pen down her new learning and findings in her evolving journey as a software developer, to help in her times of “getting lost when re-facing the same issue/bug”.&lt;/p&gt;

&lt;p&gt;An in-depth means of teaching, explaining or breaking down a logic asides other means is through writing as it allows you explore all of your creative thinking at your own convenience without having to worry about stage fright.&lt;/p&gt;

&lt;p&gt;Technical writing encompasses all of these and more, it involves the documentation of complex technical process or ideology into simpler understandable formats. It started out with User or instruction manuals for technical products or services and has since advanced to writing about technical or specialized topics, such as computer applications and tools, software development languages and frameworks, medical procedures, environmental regulations etc&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;The Skills:&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Technical writing skills come naturally to some and to others it’s learnt, but in all, some of the vital skills needed to be a good technical writer involves:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Strong writing and communication skills&lt;/strong&gt; : The ability to relay complex meanings and terms in simpler and comprehensible words to your audience are a-must-have, as they drive down the essence of coming on to read your article i.e getting to understand what they hadn’t all along.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Technical experience / skill relevant to the field&lt;/strong&gt; : Conveying a message implies understanding and mastery of it, knowledge and experience in the field of what you write about is a requirement. It’s presumed you currently work or are knowledged in the stated field and as such know your onions, many technical writers hold technical positions in their fields such as &lt;em&gt;Software developer/engineers, Infosecurity analysts, etc.&lt;/em&gt; Writing in a field you are well conversant with goes a long way in churning out a great article.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Interest&lt;/strong&gt; : Having (huge) interest in technology gives you an edge while venturing into technical writing as it spurs and keeps you up on your feet in scout of new technologies to learn and write about.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Research skill&lt;/strong&gt; : Writing involves (a lot of) collecting and comparing data and findings from different sources combined with your personal knowledge on the topic to turn into valuable written information.&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;The Process&lt;/strong&gt; :
&lt;/h3&gt;

&lt;p&gt;Writing a technical article can be a lot more different from a usual essay and could take quite a while as most times involves having to recreate simple to complex practical technical steps in order to relay your aim . As a result of these, before and while writing, the following precise steps are always taken so as not to create drastic flaws in your article:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Know your audience&lt;/strong&gt; : The reader is always at the forefront of a technical writer’s mind, Knowing the category of readers you’re writing for goes a long way to simplifying the rest of the task. Writing an article meant for beginners in bogus terms while using unfamiliar technical or advanced parlance won’t do the trick in passing down the message. Your audience defines the texts used and how your information is conveyed. To help know your audience more, the following questions should be considered before starting up an article:&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;Who are they?&lt;/li&gt;
&lt;li&gt;What do they need (to learn from your article) ?&lt;/li&gt;
&lt;li&gt;Where would they be reading your article?&lt;/li&gt;
&lt;li&gt;Why would they be reading?&lt;/li&gt;
&lt;li&gt;How would they be reading?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;These questions go a long way in helping understand your audience.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Map out your article&lt;/strong&gt;  : Writing a technical article can seem like a complex uphill task and a bit confusing as to where to start from but with your audience clearly defined, creating a map or guideline (start &amp;lt;—&amp;gt; finish) comes off a lot easier. Outline the necessary information your audience ought to gain from reading and possibly turn them into points / guidelines, some writers like to outline all of these i.e create an overview at the beginning of their article to give the reader an understanding of what to expect as they move on. Having a powerful introduction in your article also helps you know the next path to take in your article. Creating a map or guideline helps to highlight other areas you might not have thought about or even know and would help to get you more acquainted and prepared.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Feedback Iteration&lt;/strong&gt;  : No writer is a mountain of knowledge, just as reviews and feedback are encouraged amongst career professionals in technology, so is it in technical writing. Getting technical review and feedback on your article from colleagues, professionals, field experts etc alongside reading your own article with the mindset of your audience helps to spot both grammatical and technical errors that might have escaped your scrutiny before publishing your article.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Content Creativity&lt;/strong&gt; : Now that you understand your reader and have a map or guide to your article, infusing creativity by maintaining a style of writing while clearly communicating your message in the body of your article goes a long way to keeping your reader’s attention to the very end. Here are a few examples:&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Choice of word(s)&lt;/strong&gt;: Choosing your words and including more details where necessary helps your article be more comprehensible.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Example&lt;/em&gt;&lt;/strong&gt; : &lt;em&gt;Open the command line and perform XYZ actions inside the “documents” directory&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Improved&lt;/em&gt;&lt;/strong&gt;  : &lt;em&gt;Open up your command line, go into the “documents” directory by typing “&lt;/em&gt;&lt;em&gt;cd documents” and performing XYZ actions.&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Constant use of Active voice&lt;/strong&gt;  : Use of Active voices in texts are a lot easier to read and understand than passive voice.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Example&lt;/em&gt;&lt;/strong&gt; : Over &lt;em&gt;350,000 packages are&lt;/em&gt; &lt;strong&gt;&lt;em&gt;contained&lt;/em&gt;&lt;/strong&gt; &lt;em&gt;in the Node.js npm package registry&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Improved&lt;/em&gt;&lt;/strong&gt; : &lt;em&gt;The Node.js npm package registry&lt;/em&gt; &lt;strong&gt;&lt;em&gt;contains&lt;/em&gt;&lt;/strong&gt; &lt;em&gt;over 350,000 packages.&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Sentence structure&lt;/strong&gt; : Placing the important information in the first sentence goes a long way.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Example&lt;/em&gt;&lt;/strong&gt; : &lt;em&gt;It is always advisable to back up data before carrying out a database update. If you do not adhere to this, there’s a huge possibility of permanent data loss&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Improved&lt;/em&gt;&lt;/strong&gt; : &lt;em&gt;It’s advisable to back up your data before carrying out a database update to avoid permanent data loss.&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Avoid technical slangs/abbreviations/jargons&lt;/strong&gt; : It’s quite easy getting caught up in writing an article and churning out all that information, that we unintentionally make use of abbreviation/slangs/jargons familiar to ourselves and league of friends or colleagues. When writing articles and intend to use unfamiliar terms, it’s best to state them out in full, define them and thereafter refer to it with the abbreviations rather than jump straight ahead while leaving your audience in the dark.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Example&lt;/em&gt;&lt;/strong&gt; : &lt;em&gt;The&lt;/em&gt; &lt;strong&gt;&lt;em&gt;MVC&lt;/em&gt;&lt;/strong&gt; &lt;em&gt;pattern is widely accepted across various frameworks.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Improved&lt;/em&gt;&lt;/strong&gt; &lt;em&gt;: The&lt;/em&gt; &lt;strong&gt;&lt;em&gt;Model-View-Controller&lt;/em&gt;&lt;/strong&gt; &lt;em&gt;(MVC)&lt;/em&gt; &lt;em&gt;pattern is widely accepted across various frameworks.&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Initiate a Task Based approach&lt;/strong&gt; : Most technical articles are in form of tutorials or D.I.Y’s for the reader, so writing your articles in form of steps can also be a great way to make it more comprehensive. Ensure to follow the right order of steps to give your writing a natural flow.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;The Benefits&lt;/strong&gt; :
&lt;/h3&gt;

&lt;p&gt;There are lots of benefits that come with being a technical writer, some of them include:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Constant learning&lt;/strong&gt; as you continually try to keep up with new technologies, improve on your reading and writing skills, dive into new areas and getting constant feedback. It’s an upward growth scale.&lt;/li&gt;
&lt;li&gt;It’s a &lt;strong&gt;prized and profitable skill&lt;/strong&gt; , as anyone who’s really good at conveying technical complexities in simpler terms to users are termed “valuable” to organizations who are always willing to pay heavily to have them . Some popular sites to apply for a paid technical writing gig are &lt;a href="http://www.pusher.com" rel="noopener noreferrer"&gt;Pusher &lt;/a&gt;, &lt;a href="http://www.scotch.io" rel="noopener noreferrer"&gt;Scotch.io &lt;/a&gt;, &lt;a href="http://www.logrocket.com" rel="noopener noreferrer"&gt;logrocket&lt;/a&gt; etc&lt;/li&gt;
&lt;li&gt;It’s a &lt;strong&gt;career boost&lt;/strong&gt; and additional skill-set for individuals in technology, as they are seen as being able to quickly grasp, breakdown and relay the technology use and importance to the user.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Get started with technical articles, sign up to be a guest writer on the Findworka publication, Register &lt;a href="https://goo.gl/forms/PfkheVyaex0iMlNW2" rel="noopener noreferrer"&gt;here&lt;/a&gt;:&lt;/p&gt;




</description>
      <category>technicalwriting</category>
      <category>careers</category>
      <category>softwaredevelopment</category>
      <category>womenintech</category>
    </item>
    <item>
      <title>Your First Open source Contribution (O.S.C)</title>
      <dc:creator>Ada Nduka Oyom</dc:creator>
      <pubDate>Sat, 07 Apr 2018 11:01:59 +0000</pubDate>
      <link>https://dev.to/kolokodess/your-first-open-source-contribution-osc-5f1l</link>
      <guid>https://dev.to/kolokodess/your-first-open-source-contribution-osc-5f1l</guid>
      <description>

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--0lwstPvy--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/270/1%2AsABb8KgytgMA99e4OmIcZw.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--0lwstPvy--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/270/1%2AsABb8KgytgMA99e4OmIcZw.jpeg" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;So you’re a few months or a few years old into programming, and just as you’re getting comfortable with working on little projects by you alone, you begin to get some advice/suggestions from senior colleagues about contributing to open source projects to boost your competence&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What Is this open Source that you speak of&lt;/strong&gt;?&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--fVXoGHr8--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/405/1%2AsP2WNFvXXnGmAAJ7Cyo3aQ.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--fVXoGHr8--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/405/1%2AsP2WNFvXXnGmAAJ7Cyo3aQ.jpeg" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Basically an open source is a program or software in which the source code can be inspected, modified or enhanced by anyone.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why should i contribute to open source?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--AyTtGGa5--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/447/1%2ADqljuy77e3Q1Jc9g7lxc8A.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--AyTtGGa5--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/447/1%2ADqljuy77e3Q1Jc9g7lxc8A.jpeg" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;There are lots and lots of reasons for you to contribute to open source, here’s a few;  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;You get to improve your skills&lt;/strong&gt; , be it coding, designing, writing, etc so long you’re willing to practice, there’s always a project for you.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Meet people of like minds&lt;/strong&gt;. Most open source projects are filled with welcoming communities who are always willing to help wherever you encounter difficulties. Many long lasting friendships have been formed from here.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;-Get mentors&lt;/strong&gt;. Being part of a team contributing to an open source project means you getting to interact and exchange ideas with other members who have had more experience in that particular field and are willing to help out.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;-Build your profile&lt;/strong&gt;. Since projects you work on here are open, you can always get free samples to add them to your portfolio for that interview.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;I think I’m getting a hang of it now, How do i start off?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Before giving tips on how to go about contributing, it’s important for us to note that OSC isn’t just about writing codes, even as a software developer, it’s more easier starting off OSC by contributing to documentations and parts that involve less codes, as it helps build your confidence (you’ll definitely write codes, if you want to) but there’s more to OSC than writing codes;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;-You love Designing&lt;/strong&gt;?. You could Conduct user research to reorganize and refine the project’s navigation or menus,&lt;br&gt;&lt;br&gt;
•Restructure layouts to improve the project’s usability&lt;br&gt;&lt;br&gt;
•Put together a style guide to help the project have a consistent visual design&lt;br&gt;&lt;br&gt;
•Create art for t-shirts or a new logo&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;-You love Writing&lt;/strong&gt;? You could Write and improve the project’s documentation&lt;br&gt;&lt;br&gt;
•Start a newsletter for the project, or curate highlights from the mailing list&lt;br&gt;&lt;br&gt;
Was this article helpful in any way? don’t forget to recommend and share it☺. Check out more articles on She Code Africa•Write a translation for the project’s documentation&lt;br&gt;&lt;br&gt;
•Write tutorials for the project&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;-Are you good at planning events&lt;/strong&gt;? You could Organize workshops or meetups about the project&lt;br&gt;&lt;br&gt;
•Help community members find the right conferences and submit proposals for speaking&lt;br&gt;&lt;br&gt;
•Organize the project’s conference (if they have one)&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;-Do you love coding&lt;/strong&gt;? You could Find an open issue to tackle&lt;br&gt;&lt;br&gt;
•Automate project setup&lt;br&gt;&lt;br&gt;
•Improve tooling and testing&lt;br&gt;&lt;br&gt;
•Ask if you can help write a new feature&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;-Are you good at helping others&lt;/strong&gt;? Then you could Answer questions about the project on e.g., Stack Overflow&lt;br&gt;&lt;br&gt;
•Answer questions for people on open issues&lt;br&gt;&lt;br&gt;
•Help moderate the discussion boards or conversation channels&lt;br&gt;&lt;br&gt;
•Review code on other people’s submissions&lt;br&gt;&lt;br&gt;
•Write tutorials for how a project can be used&lt;br&gt;&lt;br&gt;
•Offer to mentor another contributor&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Oh gods of Open Source Contribution, what is thy way forward?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--7ZNZ1TKV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/513/1%2AM5JjFLK9fLtIMZ7ClGrxIg.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--7ZNZ1TKV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/513/1%2AM5JjFLK9fLtIMZ7ClGrxIg.jpeg" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Before you set out to making contributions, &lt;a href="https://opensource.guide/how-to-contribute/"&gt;Read&lt;/a&gt; up Github’s complete guide on finding a project and submitting a contribution here, and you’re good to go!&lt;/p&gt;

&lt;p&gt;If you are within Africa or are an African, You can also get to join a community for open source lovers on twitter &lt;a href="www.twitter.com/oscafrica"&gt;@oscafrica&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;“Ask not what your country can do for you — ask what you can do for your country.&lt;/em&gt;” — J.F Kennedy.&lt;/p&gt;





</description>
      <category>opensource</category>
      <category>webdev</category>
      <category>beginners</category>
      <category>softwaredevelopment</category>
    </item>
    <item>
      <title>Nevertheless, Ada Nduka Oyom Coded</title>
      <dc:creator>Ada Nduka Oyom</dc:creator>
      <pubDate>Tue, 06 Mar 2018 08:56:50 +0000</pubDate>
      <link>https://dev.to/kolokodess/nevertheless-ada-nduka-oyom-coded--45ol</link>
      <guid>https://dev.to/kolokodess/nevertheless-ada-nduka-oyom-coded--45ol</guid>
      <description>&lt;h2&gt;
  
  
  I began to code because...
&lt;/h2&gt;

&lt;p&gt;I found love in building things, i wanted to do something different, make an impact and break stereotypes while doing it&lt;/p&gt;

&lt;h2&gt;
  
  
  I recently overcame...
&lt;/h2&gt;

&lt;p&gt;My fear for working on the client side, i took up the #100DaysOfCode challenge and currently using it as an opportunity to build my front end skills&lt;/p&gt;

&lt;h2&gt;
  
  
  I want to brag about...
&lt;/h2&gt;

&lt;p&gt;My engagements with the growing female developer community in my country Nigeria, and Africa through my self-found organization: &lt;a href="//www.twitter.com/shecodeafrica"&gt;She code Africa&lt;/a&gt;, we've been able to organize training on web development both online and offline, curate and publish stories on African women in tech doing amazing works in the African tech space.&lt;/p&gt;

&lt;h2&gt;
  
  
  I'm an expert at...
&lt;/h2&gt;

&lt;p&gt;Web development : Python, JavaScript,HTML,CSS &lt;/p&gt;

&lt;h2&gt;
  
  
  My advice for other women and non-binary folks who code is...
&lt;/h2&gt;

&lt;p&gt;Never feel stereotyped, if you think it and you will it then you can do it!&lt;/p&gt;

&lt;h2&gt;
  
  
  My advice for allies to support women and non-binary folks who code is...
&lt;/h2&gt;

&lt;p&gt;Create a welcoming environment for the women while trying not to generalize on her skill being low just because she is a woman.&lt;/p&gt;

</description>
      <category>wecoded</category>
      <category>womenintech</category>
      <category>girlswhocode</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Teaching Secondary School Girls To Code - My Experience</title>
      <dc:creator>Ada Nduka Oyom</dc:creator>
      <pubDate>Thu, 07 Sep 2017 11:56:16 +0000</pubDate>
      <link>https://dev.to/kolokodess/teaching-secondary-school-girls-to-code---my-experience</link>
      <guid>https://dev.to/kolokodess/teaching-secondary-school-girls-to-code---my-experience</guid>
      <description>&lt;p&gt;At the start of the year 2017, i made a year long Goal in which one of them was to be able to give back to the Tech community by laying impact on the lives of young girls around me.&lt;/p&gt;

&lt;p&gt;Being an advocate for Girl Tech-education and Women-in-Tech,together with my love for writing code, my participation in Women-In-Tech focused events (both as a participant and organizer) and running my Organisation “She Code Africa”. I choose to start up on one of the goals(stated above) by teaching and mentoring young girls to code (for free) starting out from those in secondary school.&lt;/p&gt;

&lt;p&gt;I specifically choose the secondary school category as i felt they made up a larger part of the group classified as the “Grass root”, Giving them an opportunity to learn to code at a young age gave greater and higher chances at them selecting a STEM related course in college/University, and in future have them take up more roles in STEM fields and finally bridging the gender gap in Technology. I had decided to name my Project “SUMMER PROJECT since it was going to run all through the summer holiday.&lt;/p&gt;

&lt;p&gt;Without much talk, i will share some of the pictures from the training:&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%2Fmj2amtarrd674udgc3x3.JPG" 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%2Fmj2amtarrd674udgc3x3.JPG" alt="alt text"&gt;&lt;/a&gt;&lt;br&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%2Fvarvcefdpqi5d8ptyda1.JPG" 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%2Fvarvcefdpqi5d8ptyda1.JPG" alt="alt text"&gt;&lt;/a&gt;&lt;br&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%2Fojd9hjv9onyxdzw964xo.JPG" 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%2Fojd9hjv9onyxdzw964xo.JPG" alt="alt text"&gt;&lt;/a&gt;&lt;br&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%2Fwat9jvr5sm3a9yndd76p.JPG" 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%2Fwat9jvr5sm3a9yndd76p.JPG" alt="alt text"&gt;&lt;/a&gt;&lt;br&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%2Fdqj6cwcsdsg6y4scp63e.JPG" 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%2Fdqj6cwcsdsg6y4scp63e.JPG" alt="alt text"&gt;&lt;/a&gt;&lt;br&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%2Fz2l38n2g0pjjn0kgxvj7.JPG" 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%2Fz2l38n2g0pjjn0kgxvj7.JPG" alt="alt text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;To read more about how the event went, my experience, lessons and overall impact on the ladies, click &lt;a href="https://medium.com/@kolokodess/teaching-secondary-school-girls-to-code-my-experience-a4d1e7052f89" rel="noopener noreferrer"&gt;here&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I hope to turn this into a quarterly event with more sponsors and a bigger team, expand into more centers across Nigeria and Africa,I'm always open to sponsorship talks, if you need more information about the next event or how you can help please leave a comment below and I'll be more than glad to reach out.&lt;/p&gt;

</description>
      <category>womenintech</category>
      <category>beginners</category>
      <category>webdev</category>
      <category>girlswhocode</category>
    </item>
    <item>
      <title>Understanding The Cloudâ€Š–â€ŠBeginner Guide</title>
      <dc:creator>Ada Nduka Oyom</dc:creator>
      <pubDate>Mon, 04 Sep 2017 09:24:58 +0000</pubDate>
      <link>https://dev.to/kolokodess/understanding-the-cloudbeginner-guide</link>
      <guid>https://dev.to/kolokodess/understanding-the-cloudbeginner-guide</guid>
      <description>&lt;p&gt;While surfing the Internet or having a discussion with a technical colleague or friend, you may have at some point or the other heard about the word “Cloud / Cloud computing” and it’s association to storage, In your curious state, you try to find out it’s meaning but really all that Technical grammar in the explanation never gets to you&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What Exactly Is The Cloud?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Your typical technical blog will describe it as “ &lt;em&gt;a computing-infrastructure and software model for enabling ubiquitous access to shared pools of configurable resources (such as computer networks, servers, storage, applications and services),which can be rapidly provisioned with minimal management effort, often over the Internet.&lt;/em&gt;”&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;No, Really, What Exactly Is The Cloud?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;To break all that down, you first need to understand the Cloud isn’t a physical thing (neither is it the cloud up in the sky) you get to use like a safe.&lt;br&gt;
&lt;em&gt;“The cloud”&lt;/em&gt; is simply all of the things you can access &lt;a href="http://www.dictionary.com/browse/remote"&gt;remotely&lt;/a&gt; on the internet as an individual. The saying “something’s being &lt;strong&gt;stored in the cloud&lt;/strong&gt;” simply means it’s being stored on a &lt;a href="http://whatis.techtarget.com/definition/server"&gt;server&lt;/a&gt; or multiple servers built by another individual in a particular location rather than your normal PC’s hard drive or Phone’s storage.&lt;/p&gt;

&lt;p&gt;We make use of the cloud in some of our daily activities but have little or no idea we’re really doing that. Here are a few examples of how we use the cloud:&lt;/p&gt;

&lt;p&gt;1.Making use of Google drive / Dropbox / Evernote / iCloud for different activities all sum up to interacting and making use of the cloud&lt;br&gt;
2.Uploading a picture to your favorite social media accounts e.g Instagram simply means uploading to the cloud (&lt;em&gt;how else do you think, you’ve been able to re-visit your account and still find your pictures there?&lt;/em&gt;)&lt;br&gt;
3.Making use of web-based email services e.g Gmail, yahoo mail etc. Web based email services all have their emails stored on servers which allows you access your mails without internet connection or your mailbox from any PC anywhere! It also means you’ll be able to recover your emails if something happens to your computer.&lt;/p&gt;

&lt;p&gt;Some of the popular cloud storage services available used to host data online include: &lt;a href="//cloud.google.com"&gt;Google Cloud&lt;/a&gt;, &lt;a href="//www.aws.amazon.com"&gt;Amazon web services(AWS)&lt;/a&gt; owned by Amazon which has been around since 2006 and is used by a host of popular sites including &lt;a href="//www.instagram.com"&gt;Instagram&lt;/a&gt; and &lt;a href="//www.pinterest.com"&gt;Pinterest&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How Big Is The Cloud?&lt;/strong&gt;&lt;br&gt;
Unlike our local storage on our PC’s or Phones which have a storage limit, the storage limit for a particular cloud service is limitless, no one knows the amount of space that can be created but according to an &lt;a href="http://mashable.com/2012/10/04/how-big-is-the-cloud/#yqGOLQrDGPq9"&gt;infographic&lt;/a&gt;, the cloud can store up to 1 Exabyte&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How Safe Is The Cloud?&lt;/strong&gt;&lt;br&gt;
With growing concerns in personal information being compromised, many individuals get worried about making use of them, but Some Companies like Google are tackling that with their &lt;a href="https://cloud.google.com/storage/docs/encryption"&gt;data encryption&lt;/a&gt; for paid cloud storage users.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Benefits Of working with The Cloud?&lt;/strong&gt;&lt;br&gt;
There are immense benefits associated with working with the cloud, the biggest being how it allows you store and access data(large or small) remotely from any location without having to worry about storage space. It also allows large companies run efficiently and cost-effective while scaling up or down on data size:&lt;/p&gt;

&lt;p&gt;1.&lt;strong&gt;File sharing&lt;/strong&gt;: You can share files with several people at the same time. e.g you uploading several photos to Flickr or iCloud Photos, and then sharing them with family and friends&lt;/p&gt;

&lt;p&gt;2.&lt;strong&gt;Data Backup&lt;/strong&gt;: You can also make use of the cloud to protect your files. Several applications these days proffer the option of automatically backing up your data to the cloud. This way, if your PC or Phone gets lost, stolen, or damaged, you can get to recover these files from the cloud.&lt;/p&gt;

&lt;p&gt;3.&lt;strong&gt;File storage&lt;/strong&gt;: You get to store all type of information in the cloud, including files and email. Which allows you access them from any computer or mobile device with an Internet connection, not just your home computer. e.g Dropbox and Google Drive&lt;/p&gt;

&lt;p&gt;&lt;em&gt;originally posted on my medium publication &lt;a href="https://goo.gl/VmVZAx"&gt;here&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>webdev</category>
      <category>cloud</category>
    </item>
    <item>
      <title>Understanding The MVC Pattern In Django</title>
      <dc:creator>Ada Nduka Oyom</dc:creator>
      <pubDate>Wed, 19 Jul 2017 14:54:06 +0000</pubDate>
      <link>https://dev.to/kolokodess/understanding-the-mvc-pattern-in-django</link>
      <guid>https://dev.to/kolokodess/understanding-the-mvc-pattern-in-django</guid>
      <description>&lt;p&gt;Sequel to this post, i put up a tutorial for beginners on how to get started with Django, &lt;a href="https://dev.to/kolokodess/getting-started-with-django"&gt;here&lt;/a&gt;. And in between i talked about how Django embraces the popular Model — View — Controller pattern with a new twist and how it can be a bit difficult grasping it for first timers (Yes, it took a while for me to grasp it too)&lt;br&gt;
So In this post I’m going to be giving a deeper insight as to how the MVC pattern works in general and how it can be related to Django in scope.&lt;/p&gt;

&lt;p&gt;The MVC pattern is a software architecture pattern that separates data presentation from the logic of handling user interactions(in other words, saves you stress:), it has been around as a concept for a while, and has invariably seen an exponential growth in use since its inception. It has also been described as one of the best ways to create client-server applications, all of the best frameworks for web are all built around the MVC concept&lt;/p&gt;

&lt;p&gt;To break it down, here’s a general overview of the MVC Concept;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Model&lt;/strong&gt;: This handles your data representation, it serves as an interface to the data stored in the database itself, and also allows you to interact with your data without having to get perturbed with all the complexities of the underlying database.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;View&lt;/strong&gt;: As the name implies, it represents what you see while on your browser for a web application or In the UI for a desktop application.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Controller&lt;/strong&gt;: provides the logic to either handle presentation flow in the view or update the model’s data i.e it uses programmed logic to figure out what is pulled from the database through the model and passed to the view,also gets information from the user through the view and implements the given logic by either changing the view or updating the data via the model , To make it more simpler, see it as the engine room.&lt;/p&gt;

&lt;p&gt;Now that we understand the general concept of the MVC, understanding how it is implemented in different frameworks can be another task as some frameworks(Django inclusive) like to implement this same functionality in another way making it a bit difficult understanding what actually happens at each layer.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How do we relate it to Our scope in Django?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Even with Django following the MVC pattern, it prefers to use it’s own logic in the implementation, the framework considers handling the Controller part of the MVC itself and letting most of the good stuff happen in the Model-Template-View, this is why Django is mostly reffered to as the MTV framework.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;In the MTV pattern:&lt;/strong&gt;&lt;br&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%2Fjibeeiex5z1arwvp1c3q.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%2Fjibeeiex5z1arwvp1c3q.png" alt="alt text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Model&lt;/strong&gt;: Just like the Model explanation in the MVC pattern , this also takes the same position as the interface or relationship between the data and contains everything related to data access and validation.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Template&lt;/strong&gt;: This relates to the View in the MVC pattern as it is the presentation layer that handles the presentation logic in the framework and basically controls what should be displayed and how it should be displayed to the user.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;View&lt;/strong&gt;: This part relates to the Controller in the MVC pattern and handles all the business logic that throws down back to the respective templates.It serves as the bridge between the model and the template&lt;/p&gt;

&lt;p&gt;The tiny difference that can constitute as the most confusing part in all this, is how Django suggests that the View should include the business logic instead of the presentation logic alone as it is in the standard MVC pattern and the Template to take care of all of the presentation logic alone while the MVC pattern does not include a Template component at all. As a result of this, when compared to the standard MVC pattern, Django’s design is also referred to as the &lt;em&gt;Model-Template-View + Controller&lt;/em&gt; where Controller is often times omitted because it’s already part of the framework.&lt;br&gt;
Although it is really helpful understanding this pattern before delving into development, what matters at the end of it all, is you being able to get the job done, and thankfully Django helps provide an ecosystem geared towards programming efficiency :).&lt;/p&gt;

&lt;p&gt;Found this article helpful? Don’t forget to recommend and share :)&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Originally posted on my medium publication &lt;a href="https://medium.com/shecodeafrica/understanding-the-mvc-pattern-in-django-edda05b9f43f" rel="noopener noreferrer"&gt;here&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

</description>
      <category>python</category>
      <category>webdev</category>
      <category>beginners</category>
      <category>django</category>
    </item>
    <item>
      <title>"Getting Started With Django" </title>
      <dc:creator>Ada Nduka Oyom</dc:creator>
      <pubDate>Tue, 18 Jul 2017 20:28:20 +0000</pubDate>
      <link>https://dev.to/kolokodess/getting-started-with-django</link>
      <guid>https://dev.to/kolokodess/getting-started-with-django</guid>
      <description>&lt;p&gt;New to Python? or already dancing some tango with it and you feel itâ€™s time to dabble into some framework magic for web?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Meet Django&lt;/strong&gt;:&lt;br&gt;
DJANGO is a web framework built entirely on python,itâ€™s free, open-sourced and also follows the Model View Controller pattern, (in this case; Model, Template, Viewâ€Šâ€”â€ŠWhere the View relates to the Controller and The Template relates to the View in the MVC pattern. This part can be a bit confusing to newbies starting out, but along the line youâ€™ll get to understand the logic behind this more :). There are already lots of popular sites running on django, examples are: &lt;em&gt;instagram, pinterest etc&lt;/em&gt;&lt;br&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%2F892l0g65tnxh2fyfxhpm.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%2F892l0g65tnxh2fyfxhpm.png" alt="alt text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;sites running on Django&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Django also provides some excellent documentation here,along with features and tools, some of which include:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A nice templating language.&lt;/li&gt;
&lt;li&gt;Security features like CSRF&lt;/li&gt;
&lt;li&gt;Excellent lightweight server for development and testing e.t.c&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In this tutorial, I will be showing you how to get your first Django website up and running. Before we start, we need to have Python downloaded and installed on our System, to download and install python, click &lt;a href="//www.python.org"&gt;here&lt;/a&gt; .&lt;br&gt;
Note: You need to already have a basic understanding of python, also Iâ€™ll be running this tutorial on a Linux based system, so most commands would follow suite the linux way. But there will be little or no difference on most.&lt;br&gt;
To ensure itâ€™s fully downloaded, open up your terminal and type in&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="n"&gt;python&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;An interactive shell shows up:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="n"&gt;Python&lt;/span&gt; &lt;span class="mf"&gt;2.7&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="mi"&gt;12&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;default&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;Nov&lt;/span&gt; &lt;span class="mi"&gt;19&lt;/span&gt; &lt;span class="mi"&gt;2016&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;06&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="mi"&gt;48&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;GCC&lt;/span&gt; &lt;span class="mf"&gt;5.4&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt; &lt;span class="mi"&gt;20160609&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="n"&gt;on&lt;/span&gt; &lt;span class="n"&gt;linux2&lt;/span&gt;
&lt;span class="n"&gt;Type&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;help&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;copyright&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;credits&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt; &lt;span class="ow"&gt;or&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;license&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt; &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="n"&gt;more&lt;/span&gt; &lt;span class="n"&gt;information&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;
&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;To exit, type in &lt;strong&gt;ctrl + z&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;To have a more neater arrangement, itâ€™s always advisable to create a directory for your projects&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="n"&gt;mkdir&lt;/span&gt; &lt;span class="n"&gt;folder_name&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Then cd into the project with:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="n"&gt;cd&lt;/span&gt; &lt;span class="n"&gt;folder_name&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;(every other step will be carried out while inside this folder)&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Set Up Your Virtual Environment:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Next thing we need to do, is set up our virtual environment, a virtual environment helps you run several versions of python/django right on your machine (e.g you could have two different python/django projects running on different versions, to avoid them clashing and to give you room to run them both without errors, the virtual environment comes to your rescue. One virtual environment = one python/django version).Itâ€™s strongly advised to always use a virtual environment.&lt;br&gt;
To set up our virtual environment, weâ€™ll be using pythonâ€™s package manager pip to do the installation, type in:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="n"&gt;pip&lt;/span&gt; &lt;span class="n"&gt;install&lt;/span&gt; &lt;span class="n"&gt;virtualenv&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;After installation,itâ€™s time to create a virtual environment that would enable us use a preferred django version of our choice:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="n"&gt;virtualenv&lt;/span&gt; &lt;span class="n"&gt;env_name&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;Note: env_name should be replaced with the preferred name of your environment. (I like to name my environments with the django version installed in it for easier recognition).&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Activating Virtual Environment:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;To activate our virtual environment for linux/Mac OS:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="n"&gt;source&lt;/span&gt; &lt;span class="n"&gt;env_name&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="nb"&gt;bin&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;activate&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;For windows:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="n"&gt;env_name&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;script&lt;/span&gt;
&lt;span class="n"&gt;activate&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Install Django:&lt;/strong&gt;&lt;br&gt;
Now itâ€™s time to install django on to our machine:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="n"&gt;pip&lt;/span&gt; &lt;span class="n"&gt;install&lt;/span&gt; &lt;span class="n"&gt;django&lt;/span&gt;&lt;span class="o"&gt;==&lt;/span&gt;&lt;span class="mf"&gt;1.8&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Using ==1.8 only gives a direction to django about the particular version you want to install, in this case version 1.8. To just go ahead and download the latest version, input pip install django .&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Starting A project:&lt;/strong&gt;&lt;br&gt;
Now we have django up and running, itâ€™s time to start up our first project! Yaah!. Still in our command line, type in :&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="n"&gt;django&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;admin&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;py&lt;/span&gt; &lt;span class="n"&gt;startproject&lt;/span&gt; &lt;span class="n"&gt;project_name&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;Note&lt;/em&gt;: project_name = name of your project . In this case, weâ€™ll work with mask_off as our project name.&lt;/p&gt;

&lt;p&gt;This creates a sub-folder with the name mask_off and a skeleton structure of&lt;/p&gt;

&lt;p&gt;mask_off&lt;br&gt;
â”œâ”€mask_off&lt;br&gt;
â”‚ â”œâ”€â”€ &lt;strong&gt;init&lt;/strong&gt;.py&lt;br&gt;
â”‚ â”œâ”€â”€ settings.py&lt;br&gt;
â”‚ â”œâ”€â”€ urls.py&lt;br&gt;
â”‚ â””â”€â”€ wsgi.py&lt;br&gt;
â””â”€â”€ manage.py&lt;/p&gt;

&lt;p&gt;Django gives us more ease by creating the above files:&lt;br&gt;
1) the &lt;strong&gt;&lt;strong&gt;init&lt;/strong&gt;.py&lt;/strong&gt; helps python treat the directories as containing packages; so as to prevent directories with a common name, from unintentionally hiding valid modules that occur later (deeper) on the module search path.In most cases, itâ€™s usually an empty file.&lt;br&gt;
2) The &lt;strong&gt;settings.py&lt;/strong&gt; file contains all settings your project requires, as we progress, weâ€™ll visit this file often.&lt;br&gt;
3) The &lt;strong&gt;WSGI&lt;/strong&gt; (Web Server Gateway Interface) acts as the interface our web server uses to interact with our web application. Read more about it &lt;a href="https://en.wikipedia.org/wiki/Web_Server_Gateway_Interface" rel="noopener noreferrer"&gt;here&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Run Server:&lt;/strong&gt;&lt;br&gt;
Thereâ€™s no fun thing as that of visiting your own webpage, so letâ€™s run our server which also generate a link for us to view our webpage&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="n"&gt;python&lt;/span&gt; &lt;span class="n"&gt;manage&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;py&lt;/span&gt; &lt;span class="n"&gt;runserver&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This shows upâ€¦&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="n"&gt;python&lt;/span&gt; &lt;span class="n"&gt;manage&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;py&lt;/span&gt; &lt;span class="n"&gt;runserver&lt;/span&gt; 
&lt;span class="n"&gt;Performing&lt;/span&gt; &lt;span class="n"&gt;system&lt;/span&gt; &lt;span class="n"&gt;checks&lt;/span&gt;&lt;span class="bp"&gt;...&lt;/span&gt;
&lt;span class="n"&gt;System&lt;/span&gt; &lt;span class="n"&gt;check&lt;/span&gt; &lt;span class="n"&gt;identified&lt;/span&gt; &lt;span class="n"&gt;no&lt;/span&gt; &lt;span class="nf"&gt;issues &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt; &lt;span class="n"&gt;silenced&lt;/span&gt;&lt;span class="p"&gt;).&lt;/span&gt;
&lt;span class="n"&gt;You&lt;/span&gt; &lt;span class="n"&gt;have&lt;/span&gt; &lt;span class="n"&gt;unapplied&lt;/span&gt; &lt;span class="n"&gt;migrations&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="n"&gt;your&lt;/span&gt; &lt;span class="n"&gt;app&lt;/span&gt; &lt;span class="n"&gt;may&lt;/span&gt; &lt;span class="ow"&gt;not&lt;/span&gt; &lt;span class="n"&gt;work&lt;/span&gt; &lt;span class="n"&gt;properly&lt;/span&gt; &lt;span class="n"&gt;until&lt;/span&gt; &lt;span class="n"&gt;they&lt;/span&gt; &lt;span class="n"&gt;are&lt;/span&gt; &lt;span class="n"&gt;applied&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;
&lt;span class="n"&gt;Run&lt;/span&gt; &lt;span class="sh"&gt;'&lt;/span&gt;&lt;span class="s"&gt;python manage.py migrate&lt;/span&gt;&lt;span class="sh"&gt;'&lt;/span&gt; &lt;span class="n"&gt;to&lt;/span&gt; &lt;span class="nb"&gt;apply&lt;/span&gt; &lt;span class="n"&gt;them&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;
&lt;span class="n"&gt;July&lt;/span&gt; &lt;span class="mi"&gt;12&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;2017&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="mi"&gt;15&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="mi"&gt;19&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="mi"&gt;01&lt;/span&gt;
&lt;span class="n"&gt;Django&lt;/span&gt; &lt;span class="n"&gt;version&lt;/span&gt; &lt;span class="mf"&gt;1.8&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;using&lt;/span&gt; &lt;span class="n"&gt;settings&lt;/span&gt; &lt;span class="sh"&gt;'&lt;/span&gt;&lt;span class="s"&gt;mask_off.settings&lt;/span&gt;&lt;span class="sh"&gt;'&lt;/span&gt;
&lt;span class="n"&gt;Starting&lt;/span&gt; &lt;span class="n"&gt;development&lt;/span&gt; &lt;span class="n"&gt;server&lt;/span&gt; &lt;span class="n"&gt;at&lt;/span&gt; &lt;span class="n"&gt;http&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="mf"&gt;127.0&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="mf"&gt;0.1&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="mi"&gt;8000&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;
&lt;span class="n"&gt;Quit&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;server&lt;/span&gt; &lt;span class="k"&gt;with&lt;/span&gt; &lt;span class="n"&gt;CONTROL&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;C&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;Notice the warning message about having unapplied migrations? Now letâ€™s do a small but very important talk about migrations;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Making Migrations:&lt;/strong&gt;&lt;br&gt;
Migrations helps us make changes to our database schema without losing any data, each time we create a new model or make changes to a current one and run migrations, it helps update our database tables with the schemas without having to go through all the stress of dragging and recreating the database ourselves.&lt;/p&gt;

&lt;p&gt;To make our migration:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="n"&gt;python&lt;/span&gt; &lt;span class="n"&gt;manage&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;py&lt;/span&gt; &lt;span class="n"&gt;migrate&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;An output of this sort should show up:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="n"&gt;Operations&lt;/span&gt; &lt;span class="n"&gt;to&lt;/span&gt; &lt;span class="n"&gt;perform&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
  &lt;span class="n"&gt;Synchronize&lt;/span&gt; &lt;span class="n"&gt;unmigrated&lt;/span&gt; &lt;span class="n"&gt;apps&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;staticfiles&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;messages&lt;/span&gt;
  &lt;span class="n"&gt;Apply&lt;/span&gt; &lt;span class="nb"&gt;all&lt;/span&gt; &lt;span class="n"&gt;migrations&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;admin&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;contenttypes&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;auth&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;sessions&lt;/span&gt;
&lt;span class="n"&gt;Synchronizing&lt;/span&gt; &lt;span class="n"&gt;apps&lt;/span&gt; &lt;span class="n"&gt;without&lt;/span&gt; &lt;span class="n"&gt;migrations&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
  &lt;span class="n"&gt;Creating&lt;/span&gt; &lt;span class="n"&gt;tables&lt;/span&gt;&lt;span class="bp"&gt;...&lt;/span&gt;
    &lt;span class="n"&gt;Running&lt;/span&gt; &lt;span class="n"&gt;deferred&lt;/span&gt; &lt;span class="n"&gt;SQL&lt;/span&gt;&lt;span class="bp"&gt;...&lt;/span&gt;
  &lt;span class="n"&gt;Installing&lt;/span&gt; &lt;span class="n"&gt;custom&lt;/span&gt; &lt;span class="n"&gt;SQL&lt;/span&gt;&lt;span class="bp"&gt;...&lt;/span&gt;
&lt;span class="n"&gt;Running&lt;/span&gt; &lt;span class="n"&gt;migrations&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
  &lt;span class="n"&gt;Rendering&lt;/span&gt; &lt;span class="n"&gt;model&lt;/span&gt; &lt;span class="n"&gt;states&lt;/span&gt;&lt;span class="p"&gt;...&lt;/span&gt; &lt;span class="n"&gt;DONE&lt;/span&gt;
  &lt;span class="n"&gt;Applying&lt;/span&gt; &lt;span class="n"&gt;contenttypes&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="mi"&gt;0001&lt;/span&gt;&lt;span class="n"&gt;_initial&lt;/span&gt;&lt;span class="p"&gt;...&lt;/span&gt; &lt;span class="n"&gt;OK&lt;/span&gt;
  &lt;span class="n"&gt;Applying&lt;/span&gt; &lt;span class="n"&gt;auth&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="mi"&gt;0001&lt;/span&gt;&lt;span class="n"&gt;_initial&lt;/span&gt;&lt;span class="p"&gt;...&lt;/span&gt; &lt;span class="n"&gt;OK&lt;/span&gt;
  &lt;span class="n"&gt;Applying&lt;/span&gt; &lt;span class="n"&gt;admin&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="mi"&gt;0001&lt;/span&gt;&lt;span class="n"&gt;_initial&lt;/span&gt;&lt;span class="p"&gt;...&lt;/span&gt; &lt;span class="n"&gt;OK&lt;/span&gt;
  &lt;span class="n"&gt;Applying&lt;/span&gt; &lt;span class="n"&gt;contenttypes&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="mi"&gt;0002&lt;/span&gt;&lt;span class="n"&gt;_remove_content_type_name&lt;/span&gt;&lt;span class="p"&gt;...&lt;/span&gt; &lt;span class="n"&gt;OK&lt;/span&gt;
  &lt;span class="n"&gt;Applying&lt;/span&gt; &lt;span class="n"&gt;auth&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="mi"&gt;0002&lt;/span&gt;&lt;span class="n"&gt;_alter_permission_name_max_length&lt;/span&gt;&lt;span class="p"&gt;...&lt;/span&gt; &lt;span class="n"&gt;OK&lt;/span&gt;
  &lt;span class="n"&gt;Applying&lt;/span&gt; &lt;span class="n"&gt;auth&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="mi"&gt;0003&lt;/span&gt;&lt;span class="n"&gt;_alter_user_email_max_length&lt;/span&gt;&lt;span class="p"&gt;...&lt;/span&gt; &lt;span class="n"&gt;OK&lt;/span&gt;
  &lt;span class="n"&gt;Applying&lt;/span&gt; &lt;span class="n"&gt;auth&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="mi"&gt;0004&lt;/span&gt;&lt;span class="n"&gt;_alter_user_username_opts&lt;/span&gt;&lt;span class="p"&gt;...&lt;/span&gt; &lt;span class="n"&gt;OK&lt;/span&gt;
  &lt;span class="n"&gt;Applying&lt;/span&gt; &lt;span class="n"&gt;auth&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="mi"&gt;0005&lt;/span&gt;&lt;span class="n"&gt;_alter_user_last_login_null&lt;/span&gt;&lt;span class="p"&gt;...&lt;/span&gt; &lt;span class="n"&gt;OK&lt;/span&gt;
  &lt;span class="n"&gt;Applying&lt;/span&gt; &lt;span class="n"&gt;auth&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="mi"&gt;0006&lt;/span&gt;&lt;span class="n"&gt;_require_contenttypes_0002&lt;/span&gt;&lt;span class="p"&gt;...&lt;/span&gt; &lt;span class="n"&gt;OK&lt;/span&gt;
  &lt;span class="n"&gt;Applying&lt;/span&gt; &lt;span class="n"&gt;sessions&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="mi"&gt;0001&lt;/span&gt;&lt;span class="n"&gt;_initial&lt;/span&gt;&lt;span class="p"&gt;...&lt;/span&gt; &lt;span class="n"&gt;OK&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This implies a successful migration, Now we can successfully run our server with no issues python manage.py runserver . We get a success message on our webpage like the one below&lt;br&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%2Fnx0e7ceymnty9q5q0512.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%2Fnx0e7ceymnty9q5q0512.png" alt="alt text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Yaah! our very own webpage.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Now we have our server running and a â€˜webpageâ€™ , but django takes pleasure in reminding us we still have a lot of work to do before we can proudly call this a webpage.&lt;/p&gt;

&lt;p&gt;The second part of this tutorial would contain; Creating a new app in our project, working with Urls, Templates, Creating views and Linking pages. For now, take out more time to go through the steps again and again to become more familiar with them. Only practice makes perfect!&lt;/p&gt;

&lt;p&gt;Things learnt From this Tutorial:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Setting up a virtual environment(Downloading, Activiating Virtual env)&lt;/li&gt;
&lt;li&gt;Installing Django&lt;/li&gt;
&lt;li&gt;Creating a project&lt;/li&gt;
&lt;li&gt;Basic project components&lt;/li&gt;
&lt;li&gt;Migrations&lt;/li&gt;
&lt;li&gt;Running Server&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Encountered any issue along the line? Let me know! Iâ€™ll be glad to help&lt;/p&gt;

&lt;p&gt;&lt;em&gt;originally posted on my medium publication &lt;a href="https://goo.gl/v7Cw8L" rel="noopener noreferrer"&gt;here&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

</description>
      <category>django</category>
      <category>python</category>
      <category>webdev</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Hi, I'm Ada Nduka Oyom</title>
      <dc:creator>Ada Nduka Oyom</dc:creator>
      <pubDate>Wed, 12 Jul 2017 23:55:00 +0000</pubDate>
      <link>https://dev.to/kolokodess/hi-im-ada-nduka-oyom</link>
      <guid>https://dev.to/kolokodess/hi-im-ada-nduka-oyom</guid>
      <description>&lt;p&gt;I have been coding for less than a year.&lt;/p&gt;

&lt;p&gt;You can find me on Twitter as &lt;a href="https://twitter.com/Kolokodess" rel="noopener noreferrer"&gt;@Kolokodess&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I live in Lagos, Nigeria.&lt;/p&gt;

&lt;p&gt;I work for &lt;a href="https://switch.ng" rel="noopener noreferrer"&gt;Switch Innovations Express&lt;/a&gt; as a Developer and Project Manager&lt;/p&gt;

&lt;p&gt;I mostly program in Python (Django) and a little PHP (Laravel).&lt;/p&gt;

&lt;p&gt;I am currently learning more about Django.&lt;/p&gt;

&lt;p&gt;It's Super Nice to meet you.&lt;/p&gt;

</description>
      <category>introduction</category>
    </item>
  </channel>
</rss>
